@media screen and (min-width: 1440px) {
    :root {
        --fluid--screen: calc(var(--fluid--max-width) * 1px);
    }
}

a {
    color: var(--a--color, var(--color-primary--500));
    text-decoration: var(--a--text-decoration);
}

a:hover {
    color: var(--a--hover--color, var(--color-primary--600));
    text-decoration: var(--a--hover--text-decoration);
}

a:not([href], [class], [to]), a:not([href], [class], [to]):hover {
    color: inherit;
    text-decoration: none;
}

abbr[title] {
    cursor: help;
    text-decoration-skip-ink: none;
}

address {
    margin: var(--address--margin, var(--address--margin-top) var(--address--margin-right) var(--address--margin-bottom) var(--address--margin-left));
    font-style: normal;
    line-height: inherit;
}

body {
    color: var(--body--color, var(--text-color));
    background-color: var(--body--background, var(--color-white));
    font-size: var(--body--font-size);
    font-family: var(--body--font-family);
    line-height: var(--body--line-height);
    letter-spacing: var(--body--letter-spacing);
    text-align: var(--body--text-align);
    transition: var(--body--transition);
    text-size-adjust: 100%;
}

caption {
    text-align: left;
    padding: var(--caption--padding, var(--caption--padding-top) var(--caption--padding-right) var(--caption--padding-bottom) var(--caption--padding-left));
    color: var(--caption--color, var(--text-color--weaker));
}

code {
    color: var(--code--color, var(--color-pink));
    font-size: var(--code--font-size);
    font-family: var(--code--font-family);
    word-wrap: break-word;
}

a > code {
    color: inherit;
}

dl {
    margin: var(--dl--margin-bottom, var(--spacing));
}

dl dt {
    font-weight: var(--dl--dt--font-weight);
}

dl dd {
    margin: var(--dl--dd--margin-bottom, var(--spacing--xs));
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    margin: var(--heading--margin, var(--heading--margin-top) var(--heading--margin-right) var(--heading--margin-bottom) var(--heading--margin-left));
    font-family: var(--heading--font-family);
    font-style: var(--heading--font-style);
    font-weight: var(--heading--font-weight);
    color: inherit;
    line-height: var(--heading--line-height);
}

h6, .h6 {
    font-size: var(--h6--font-size);
}

h5, .h5 {
    font-size: var(--h5--font-size);
}

h4, .h4 {
    font-size: var(--h4--font-size);
}

h3, .h3 {
    font-size: var(--h3--font-size);
}

h2, .h2 {
    font-size: var(--h2--font-size);
}

h1, .h1 {
    font-size: var(--h1--font-size);
}

hr {
    border-top-color: var(--hr--border-top-color);
    border-right-color: var(--hr--border-right-color);
    border-bottom-color: var(--hr--border-bottom-color);
    border-left-color: var(--hr--border-left-color);
    border-style: var(--hr--border-style, var(--hr--border-top-style) var(--hr--border-right-style) var(--hr--border-bottom-style) var(--hr--border-left-style));
    border-width: var(--hr--border-width, var(--hr--border-top-width) var(--hr--border-right-width) var(--hr--border-bottom-width) var(--hr--border-left-width));
    margin: var(--hr--margin, var(--hr--margin-top) var(--hr--margin-right) var(--hr--margin-bottom) var(--hr--margin-left));
}

iframe {
    border: 0;
}

img, svg {
    vertical-align: middle;
}

kbd {
    font-size: var(--kbd--font-size);
    font-family: var(--kbd--font-family);
    padding: var(--kbd--padding, var(--kbd--padding-top) var(--kbd--padding-right) var(--kbd--padding-bottom) var(--kbd--padding-left));
    color: var(--kbd--color, var(--contrast-text-color-dark));
    background: var(--kbd--background, var(--color-dark));
    border-radius: var(--kbd--border-radius, var(--kbd--border-top-left-radius) var(--kbd--border-top-right-radius) var(--kbd--border-bottom-right-radius) var(--kbd--border-bottom-left-radius));
    display: inline-block;
}

kbd > kbd {
    padding: 0;
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin: var(--legend--margin, var(--legend--margin-top) var(--legend--margin-right) var(--legend--margin-bottom) var(--legend--margin-left));
    font-size: var(--legend--font-size);
    line-height: inherit;
}

legend + * {
    clear: left;
}

mark {
    padding: var(--mark--padding, var(--mark--padding-top) var(--mark--padding-right) var(--mark--padding-bottom) var(--mark--padding-left));
    background: var(--mark--background, var(--color-yellow));
}

ol {
    margin: var(--ol--margin, var(--ol--margin-top) var(--ol--margin-right) var(--ol--margin-bottom) var(--ol--margin-left));
    padding: var(--ol--padding, var(--ol--padding-top) var(--ol--padding-right) var(--ol--padding-bottom) var(--ol--padding-left));
}

ol ul, ol ol {
    margin-bottom: 0;
}

output {
    display: inline-block;
}

p {
    margin: var(--p--margin, var(--p--margin-top) var(--p--margin-right) var(--p--margin-bottom) var(--p--margin-left));
}

pre {
    font-size: var(--pre--font-size);
    font-family: var(--pre--font-family);
    margin: var(--pre--margin, var(--pre--margin-top) var(--pre--margin-right) var(--pre--margin-bottom) var(--pre--margin-left));
    display: block;
    margin-top: 0;
    overflow: auto;
}

pre > code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
    background: transparent;
    padding: 0;
}

samp {
    font-family: var(--samp--font-family);
}

summary {
    cursor: pointer;
}

ul {
    margin: var(--ul--margin, var(--ul--margin-top) var(--ul--margin-right) var(--ul--margin-bottom) var(--ul--margin-left));
    padding: var(--ul--padding, var(--ul--padding-top) var(--ul--padding-right) var(--ul--padding-bottom) var(--ul--padding-left));
}

ul ol, ul ul {
    margin-bottom: 0;
}

.expand-enter-active, .expand-leave-active {
    transition-property: var(--expand-transition-property);
    transition-duration: var(--expand-transition-duration);
    transition-timing-function: var(--expand-transition-timing-function);
    overflow: hidden;
}

.expand-enter-from, .expand-leave-to {
    height: 0;
}

.fade-in-transition-enter-active, .fade-in-transition-leave-active {
    transition-property: var(--fade-in-transition-property);
    transition-duration: var(--fade-in-transition-duration);
    transition-timing-function: var(--fade-in-transition-timing-function);
}

.fade-in-transition-enter-from, .fade-in-transition-leave-active {
    opacity: 0;
}

.fade-in-linear-transition-enter-active, .fade-in-linear-transition-leave-active {
    transition-property: var(--fade-in-linear-transition-property);
    transition-duration: var(--fade-in-linear-transition-duration);
    transition-timing-function: var(--fade-in-linear-transition-timing-function);
}

.fade-in-linear-transition-enter-from, .fade-in-linear-transition-leave-from, .fade-in-linear-transition-leave-active {
    opacity: 0;
}

.slide-in-right-transition-enter-active, .slide-in-right-transition-leave-active {
    transition-property: var(--slide-in-right-transition-property);
    transition-duration: var(--slide-in-right-transition-duration);
    transition-timing-function: var(--slide-in-right-transition-timing-function);
    transform-origin: left;
}

.slide-in-right-transition-enter-from, .slide-in-right-transition-leave-to {
    transform: translateX(-100%);
}

.slide-in-right-transition-enter-to, .slide-in-right-transition-leave-from {
    transform: translateX(0);
}

.zoom-in-center-transition-enter-active, .zoom-in-center-transition-leave-active {
    transition-property: var(--zoom-in-center-transition-property);
    transition-duration: var(--zoom-in-center-transition-duration);
    transition-timing-function: var(--zoom-in-center-transition-timing-function);
    opacity: 1;
    transform-origin: center center;
}

.zoom-in-center-transition-enter-from, .zoom-in-center-transition-leave-active {
    opacity: 0;
    transform: scale(0, 0);
}

.zoom-in-top-transition-enter-active, .zoom-in-top-transition-leave-active {
    transition-property: var(--zoom-in-top-transition-property);
    transition-duration: var(--zoom-in-top-transition-duration);
    transition-timing-function: var(--zoom-in-top-transition-timing-function);
    opacity: 1;
    transform: scaleY(1);
    transform-origin: center top;
}

.zoom-in-top-transition-enter-from, .zoom-in-top-transition-leave-active {
    opacity: 0;
    transform: scaleY(0);
}

.zoom-in-right-transition-enter-active, .zoom-in-right-transition-leave-active {
    transition-property: var(--zoom-in-right-transition-property);
    transition-duration: var(--zoom-in-right-transition-duration);
    transition-timing-function: var(--zoom-in-right-transition-timing-function);
    opacity: 1;
    transform: scale(1, 1);
    transform-origin: top right;
}

.zoom-in-right-transition-enter-from, .zoom-in-right-transition-leave-active {
    opacity: 0;
    transform: scale(0.45, 0.45);
}

.zoom-in-bottom-transition-enter-active, .zoom-in-bottom-transition-leave-active {
    transition-property: var(--zoom-in-bottom-transition-property);
    transition-duration: var(--zoom-in-bottom-transition-duration);
    transition-timing-function: var(--zoom-in-bottom-transition-timing-function);
    opacity: 1;
    transform: scaleY(1);
    transform-origin: center bottom;
}

.zoom-in-bottom-transition-enter-from, .zoom-in-bottom-transition-leave-active {
    opacity: 0;
    transform: scaleY(0);
}

.zoom-in-left-transition-enter-active, .zoom-in-left-transition-leave-active {
    transition-property: var(--zoom-in-left-transition-property);
    transition-duration: var(--zoom-in-left-transition-duration);
    transition-timing-function: var(--zoom-in-left-transition-timing-function);
    opacity: 1;
    transform: scale(1, 1);
    transform-origin: top left;
}

.zoom-in-left-transition-enter-from, .zoom-in-left-transition-leave-active {
    opacity: 0;
    transform: scale(0.45, 0.45);
}

.alert {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.alert-content {
    flex-grow: 1;
}

.alert-icon {
    display: inline-flex;
    align-items: center;
}

.alert-dismiss {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

.alert a {
    color: inherit;
    font-weight: 600;
}

.alert-content *:first-child {
    margin-top: 0;
}

.alert-content *:last-child {
    margin-bottom: 0;
}

.alert code {
    background: hsla(0, 0%, 0%, 0.05);
}

.badge {
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

a:hover .badge, a:focus .badge {
    text-decoration: none;
}

.blockquote {
    margin: var(--blockquote--margin, var(--spacing));
    font-size: var(--blockquote--font-size);
}

.blockquote.-align-left {
    text-align: left;
}

.blockquote.-align-center {
    text-align: center;
}

.blockquote.-align-right {
    text-align: right;
}

.blockquote.-align-left.-border {
    padding-left: var(--blockquote--padding-left);
    border-left-width: var(--blockquote--border-left-width);
    border-left-style: var(--blockquote--border-left-style);
    border-left-color: var(--blockquote--border-left-color);
}

.blockquote.-align-right.-border {
    padding-right: var(--blockquote--padding-right);
    border-right-width: var(--blockquote--border-right-width);
    border-right-style: var(--blockquote--border-right-style);
    border-right-color: var(--blockquote--border-right-color);
}

.blockquote > p:last-child {
    margin-bottom: 0;
}

.blockquote cite {
    color: var(--blockquote--cite--color, var(--text-color--weak));
    font-size: var(--blockquote--cite--font-size);
    display: block;
}

.blockquote.-dash > cite::before {
    content: "\2014 \00A0";
}

.breadcrumb {
    display: flex;
    gap: var(--breadcrumb--gap);
}

.breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    list-style: none;
}

.breadcrumb-item, .breadcrumb-item:hover {
    color: inherit;
}

.breadcrumb-item[data-active="true"], .breadcrumb-item[data-active="true"]:hover, .breadcrumb-item[data-disabled="true"], .breadcrumb-item[data-disabled="true"]:hover {
    text-decoration: none;
}

.breadcrumb-item[to], .breadcrumb-item[href] {
    cursor: pointer;
}

.breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    content: var(--breadcrumb--separator);
    margin-right: var(--breadcrumb--gap);
}

.button {
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    user-select: none;
    cursor: pointer;
    text-decoration: none;
    outline: 0;
}

.button:hover, .button:focus, .button:active {
    text-decoration: none;
}

.button[disabled], .button:disabled {
    cursor: not-allowed;
}

.button[data-loading="true"] {
    cursor: default;
}

.button-icon, button-content {
    display: inline-flex;
    align-items: center;
}

.button .loader {
    width: var(--font-size);
    height: var(--font-size);
}

a.button.-disabled, *:disabled a.button {
    pointer-events: none;
}

.button-group {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    box-sizing: border-box;
}

.button-group .button, .button-group .button-group {
    box-shadow: none !important;
}

.button-group.-horizontal > .button:not(:last-child), .button-group.-horizontal > .button-group:has(+ .button-group) .button:last-child, .button-group.-horizontal > .button-group:has(+ .button) .button:last-child {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-right-width: 0 !important;
}

.button-group.-horizontal > .button:not(:first-child), .button-group.-horizontal > .button-group + .button-group .button:first-child, .button-group.-horizontal > .button + .button-group .button:first-child {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.button-group.-vertical > .button:not(:last-child), .button-group.-vertical > .button-group:has(+ .button-group) .button:last-child, .button-group.-vertical > .button-group:has(+ .button) .button:last-child {
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-width: 0 !important;
}

.button-group.-vertical > .button:not(:first-child), .button-group.-vertical > .button-group + .button-group .button:first-child, .button-group.-vertical > .button + .button-group .button:first-child {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.button-group.-block > .button {
    flex-basis: 100%;
}

.button-group.-vertical {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.button-group.-vertical .button, .button-group.-vertical .button-group, .button-group.-vertical [class$="-wrapper"] {
    width: 100%;
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
}

.card {
    box-shadow: var(--card--box-shadow, var(--card--box-shadow-offset-x) var(--card--box-shadow-offset-y) var(--card--box-shadow-blur-radius) var(--card--box-shadow-spread-radius) var(--card--box-shadow-color));
    background: var(--card--background);
    border-style: var(--card--border-style, var(--card--border-top-style) var(--card--border-right-style) var(--card--border-bottom-style) var(--card--border-left-style));
    border-color: var(--card--border-color, var(--card--border-top-color) var(--card--border-right-color) var(--card--border-bottom-color) var(--card--border-left-color));
    border-width: var(--card--border-width, var(--card--border-top-width) var(--card--border-right-width) var(--card--border-bottom-width) var(--card--border-left-width));
    border-radius: var(--card--border-radius, var(--card--border-top-left-radius) var(--card--border-top-right-radius) var(--card--border-bottom-right-radius) var(--card--border-bottom-left-radius));
    color: var(--card--color);
    font-size: var(--card--font-size);
    padding: var(--card--padding, var(--card--padding-top) var(--card--padding-right) var(--card--padding-bottom) var(--card--padding-left));
    transition-property: var(--card--transition-property);
    transition-duration: var(--card--transition-duration);
    transition-timing-function: var(--card--transition-timing-function);
}

.card-header, .card-footer {
    border-style: var(--card--border-style, var(--card--border-top-style) var(--card--border-right-style) var(--card--border-bottom-style) var(--card--border-left-style));
    border-color: var(--card--border-color, var(--card--border-top-color) var(--card--border-right-color) var(--card--border-bottom-color) var(--card--border-left-color));
    border-width: var(--card--border-width, var(--card--border-top-width) var(--card--border-right-width) var(--card--border-bottom-width) var(--card--border-left-width));
    border-right-width: 0;
    border-left-width: 0;
    padding: var(--card--padding, var(--card--padding-top) var(--card--padding-right) var(--card--padding-bottom) var(--card--padding-left));
}

.card-header {
    margin-top: calc(var(--card--padding-top) * -1);
    margin-right: calc(var(--card--padding-right) * -1);
    margin-bottom: var(--card--padding-bottom);
    margin-left: calc(var(--card--padding-left) * -1);
}

.card-image {
    margin-right: calc(var(--card--padding-right) * -1);
    margin-left: calc(var(--card--padding-left) * -1);
}

.card-image {
    overflow: hidden;
    margin-top: calc(var(--card--padding-top) * -1);
}

.card-image:first-child {
    border-top-left-radius: var(--card--border-top-left-radius);
    border-top-right-radius: var(--card--border-top-right-radius);
}

.card-image {
    margin-bottom: var(--card--padding-bottom);
}

.card-footer {
    margin-top: var(--card--padding-top);
    margin-right: calc(var(--card--padding-right) * -1);
    margin-bottom: calc(var(--card--padding-bottom) * -1);
    margin-left: calc(var(--card--padding-left) * -1);
}

.card .card-header:first-child, .card .card-footer:first-child {
    border-top-width: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: var(--card--border-top-left-radius, var(--border-top-left-radius--md));
    border-top-right-radius: var(--card--border-top-right-radius, var(--border-top-right-radius--md));
}

.card .card-header:last-child, .card .card-footer:last-child {
    border-bottom-width: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: var(--card--border-bottom-right-radius, var(--border-bottom-right-radius--md));
    border-bottom-left-radius: var(--card--border-bottom-left-radius, var(--border-bottom-left-radius--md));
}

.card.-light {
    --card--border-top-color: var(--card--light--border-top-color);
    --card--border-right-color: var(--card--light--border-right-color);
    --card--border-bottom-color: var(--card--light--border-bottom-color);
    --card--border-left-color: var(--card--light--border-left-color);
    --card--background: var(--card--light--background);
    --card--color: var(--card--light--color);
}

.card.-dark {
    --card--border-top-color: var(--card--dark--border-top-color);
    --card--border-right-color: var(--card--dark--border-right-color);
    --card--border-bottom-color: var(--card--dark--border-bottom-color);
    --card--border-left-color: var(--card--dark--border-left-color);
    --card--background: var(--card--dark--background);
    --card--color: var(--card--dark--color);
}

.card.-sm {
    --card--border-top-left-radius: var(--card--sm--border-top-left-radius);
    --card--border-top-right-radius: var(--card--sm--border-top-right-radius);
    --card--border-bottom-right-radius: var(--card--sm--border-bottom-right-radius);
    --card--border-bottom-left-radius: var(--card--sm--border-bottom-left-radius);
    --card--font-size: var(--card--sm--font-size);
    --card--padding-top: var(--card--sm--padding-top);
    --card--padding-right: var(--card--sm--padding-right);
    --card--padding-bottom: var(--card--sm--padding-bottom);
    --card--padding-left: var(--card--sm--padding-left);
}

.card.-md {
    --card--border-top-left-radius: var(--card--md--border-top-left-radius);
    --card--border-top-right-radius: var(--card--md--border-top-right-radius);
    --card--border-bottom-right-radius: var(--card--md--border-bottom-right-radius);
    --card--border-bottom-left-radius: var(--card--md--border-bottom-left-radius);
    --card--font-size: var(--card--md--font-size);
    --card--padding-top: var(--card--md--padding-top);
    --card--padding-right: var(--card--md--padding-right);
    --card--padding-bottom: var(--card--md--padding-bottom);
    --card--padding-left: var(--card--md--padding-left);
}

.card.-lg {
    --card--border-top-left-radius: var(--card--lg--border-top-left-radius);
    --card--border-top-right-radius: var(--card--lg--border-top-right-radius);
    --card--border-bottom-right-radius: var(--card--lg--border-bottom-right-radius);
    --card--border-bottom-left-radius: var(--card--lg--border-bottom-left-radius);
    --card--font-size: var(--card--lg--font-size);
    --card--padding-top: var(--card--lg--padding-top);
    --card--padding-right: var(--card--lg--padding-right);
    --card--padding-bottom: var(--card--lg--padding-bottom);
    --card--padding-left: var(--card--lg--padding-left);
}

.checkbox {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    outline: 0;
}

.checkbox:last-of-type {
    margin-right: 0;
}

.checkbox .checkbox-label {
    cursor: pointer;
    margin-bottom: 0;
    display: inline-flex;
    align-items: center;
    position: relative;
}

.checkbox .checkbox-label::before, .checkbox .checkbox-label::after {
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-flex;
    cursor: pointer;
    width: var(--checkbox--width);
    height: var(--checkbox--height);
}

.checkbox .checkbox-label::before {
    content: "";
    user-select: none;
    transform: translate(0, -50%);
}

.checkbox input:indeterminate ~ .checkbox-label::after {
    mask-image: url('data:image/svg+xml; utf8, <svg fill="currentColor" version="1.1" xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28"><title>minus</title><path d="M0 11.375v5.25c0 0.483 0.392 0.875 0.875 0.875h26.25c0.483 0 0.875-0.392 0.875-0.875v-5.25c0-0.483-0.392-0.875-0.875-0.875h-26.25c-0.483 0-0.875 0.392-0.875 0.875z"></path></svg>');
}

.checkbox .checkbox-label::after {
    content: "";
    z-index: 1;
    text-align: center;
    transform: scale(0) translate(0, -50%);
    border: 1px solid transparent;
    transform-origin: center top;
    mask-image: url('data:image/svg+xml; utf8, <svg fill="currentColor" version="1.1" xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28"><title>check</title><path d="M23.625 3.5l-13.125 13.125-6.125-6.125-4.375 4.375 10.5 10.5 17.5-17.5z"></path></svg>');
    mask-size: var(--checkbox--checkmark--width) var(--checkbox--checkmark--height);
    mask-position: center center;
    mask-repeat: no-repeat;
}

.checkbox input {
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
    opacity: 0;
    height: 0;
    width: 0;
}

.checkbox .checkbox-label, .checkbox input, .checkbox input:focus, .checkbox input:active {
    outline: 0;
}

.checkbox input:indeterminate ~ .checkbox-label::after, .checkbox input:checked ~ .checkbox-label::after {
    content: "";
    mask-position: center center;
    mask-repeat: no-repeat;
    transform: scale(1) translate(0, -50%);
}

.checkbox input:disabled ~ .checkbox-label, .checkbox input[readonly] ~ .checkbox-label {
    cursor: default;
}

.checkbox input:disabled ~ .checkbox-label::after, .checkbox input[readonly] ~ .checkbox-label::after, .checkbox input:checked:disabled ~ .checkbox-label::after, .checkbox input:checked[readonly] ~ .checkbox-label::after {
    cursor: not-allowed;
}

.checkbox {
    margin: var(--checkbox--margin, var(--checkbox--margin-top) var(--checkbox--margin-right) var(--checkbox--margin-bottom) var(--checkbox--margin-left));
}

.checkbox .checkbox-label {
    color: var(--checkbox--color);
    font-size: var(--checkbox--font-size);
    padding-left: calc(var(--checkbox--width) + var(--checkbox--margin-right));
    transition-property: var(--checkbox--transition-property);
    transition-duration: var(--checkbox--transition-duration);
    transition-timing-function: var(--checkbox--transition-timing-function);
}

.checkbox .checkbox-label::before {
    background: var(--checkbox--background);
    border-top-color: var(--checkbox--border-top-color);
    border-right-color: var(--checkbox--border-right-color);
    border-bottom-color: var(--checkbox--border-bottom-color);
    border-left-color: var(--checkbox--border-left-color);
    border-width: var(--checkbox--border-width, var(--checkbox--border-top-width) var(--checkbox--border-right-width) var(--checkbox--border-bottom-width) var(--checkbox--border-left-width));
    border-style: var(--checkbox--border-style, var(--checkbox--border-top-style) var(--checkbox--border-right-style) var(--checkbox--border-bottom-style) var(--checkbox--border-left-style));
    border-radius: var(--checkbox--border-radius, var(--checkbox--border-top-left-radius) var(--checkbox--border-top-right-radius) var(--checkbox--border-bottom-right-radius) var(--checkbox--border-bottom-left-radius));
    box-shadow: var(--checkbox--box-shadow, var(--checkbox--box-shadow-offset-x) var(--checkbox--box-shadow-offset-y) var(--checkbox--box-shadow-blur-radius) var(--checkbox--box-shadow-spread-radius) var(--checkbox--box-shadow-color));
    transition-property: var(--checkbox--transition-property);
    transition-duration: var(--checkbox--transition-duration);
    transition-timing-function: var(--checkbox--transition-timing-function);
}

.checkbox .checkbox-label::after {
    background: var(--checkbox--checkmark--color);
    transition-property: var(--checkbox--transition-property);
    transition-duration: var(--checkbox--transition-duration);
    transition-timing-function: var(--checkbox--transition-timing-function);
}

.checkbox:not(.-disabled) .checkbox-label:focus::before {
    box-shadow: var(--checkbox--focus--box-shadow, var(--checkbox--focus--box-shadow-offset-x) var(--checkbox--focus--box-shadow-offset-y) var(--checkbox--focus--box-shadow-blur-radius) var(--checkbox--focus--box-shadow-spread-radius) var(--checkbox--focus--box-shadow-color));
}

.checkbox input:checked ~ .checkbox-label::before, .checkbox input:indeterminate ~ .checkbox-label::before {
    background: var(--checkbox--checked--background);
    border-top-color: var(--checkbox--checked--border-top-color);
    border-right-color: var(--checkbox--checked--border-right-color);
    border-bottom-color: var(--checkbox--checked--border-bottom-color);
    border-left-color: var(--checkbox--checked--border-left-color);
}

.checkbox input:disabled ~ .checkbox-label {
    color: var(--checkbox--disabled--color);
    cursor: default;
}

.checkbox input:disabled ~ .checkbox-label::before {
    background: var(--checkbox--disabled--background);
    cursor: not-allowed;
}

.checkbox input[readonly] ~ .checkbox-label::before {
    background: var(--checkbox--readonly--background);
    cursor: not-allowed;
}

.checkbox input:checked:disabled ~ .checkbox-label::before {
    background: var(--checkbox--checked--disabled--background);
    border-top-color: var(--checkbox--checked--disabled--border-top-color);
    border-right-color: var(--checkbox--checked--disabled--border-right-color);
    border-bottom-color: var(--checkbox--checked--disabled--border-bottom-color);
    border-left-color: var(--checkbox--checked--disabled--border-left-color);
}

.checkbox input[readonly]:checked ~ .checkbox-label::before {
    background: var(--checkbox--checked--readonly--background);
    border-top-color: var(--checkbox--checked--readonly--border-top-color);
    border-right-color: var(--checkbox--checked--readonly--border-right-color);
    border-bottom-color: var(--checkbox--checked--readonly--border-bottom-color);
    border-left-color: var(--checkbox--checked--readonly--border-left-color);
}

.checkbox.-sm {
    --checkbox--border-top-left-radius: var(--checkbox--sm--border-top-left-radius);
    --checkbox--border-top-right-radius: var(--checkbox--sm--border-top-right-radius);
    --checkbox--border-bottom-right-radius: var(--checkbox--sm--border-bottom-right-radius);
    --checkbox--border-bottom-left-radius: var(--checkbox--sm--border-bottom-left-radius);
    --checkbox--font-size: var(--checkbox--sm--font-size);
    --checkbox--margin-top: var(--checkbox--sm--margin-top);
    --checkbox--margin-right: var(--checkbox--sm--margin-right);
    --checkbox--margin-bottom: var(--checkbox--sm--margin-bottom);
    --checkbox--margin-left: var(--checkbox--sm--margin-left);
    --checkbox--width: var(--checkbox--sm--width);
    --checkbox--height: var(--checkbox--sm--height);
    --checkbox--checkmark--width: var(--checkbox--sm--checkmark--width);
    --checkbox--checkmark--height: var(--checkbox--sm--checkmark--height);
}

.checkbox.-md {
    --checkbox--border-top-left-radius: var(--checkbox--md--border-top-left-radius);
    --checkbox--border-top-right-radius: var(--checkbox--md--border-top-right-radius);
    --checkbox--border-bottom-right-radius: var(--checkbox--md--border-bottom-right-radius);
    --checkbox--border-bottom-left-radius: var(--checkbox--md--border-bottom-left-radius);
    --checkbox--font-size: var(--checkbox--md--font-size);
    --checkbox--margin-top: var(--checkbox--md--margin-top);
    --checkbox--margin-right: var(--checkbox--md--margin-right);
    --checkbox--margin-bottom: var(--checkbox--md--margin-bottom);
    --checkbox--margin-left: var(--checkbox--md--margin-left);
    --checkbox--width: var(--checkbox--md--width);
    --checkbox--height: var(--checkbox--md--height);
    --checkbox--checkmark--width: var(--checkbox--md--checkmark--width);
    --checkbox--checkmark--height: var(--checkbox--md--checkmark--height);
}

.checkbox.-lg {
    --checkbox--border-top-left-radius: var(--checkbox--lg--border-top-left-radius);
    --checkbox--border-top-right-radius: var(--checkbox--lg--border-top-right-radius);
    --checkbox--border-bottom-right-radius: var(--checkbox--lg--border-bottom-right-radius);
    --checkbox--border-bottom-left-radius: var(--checkbox--lg--border-bottom-left-radius);
    --checkbox--font-size: var(--checkbox--lg--font-size);
    --checkbox--margin-top: var(--checkbox--lg--margin-top);
    --checkbox--margin-right: var(--checkbox--lg--margin-right);
    --checkbox--margin-bottom: var(--checkbox--lg--margin-bottom);
    --checkbox--margin-left: var(--checkbox--lg--margin-left);
    --checkbox--width: var(--checkbox--lg--width);
    --checkbox--height: var(--checkbox--lg--height);
    --checkbox--checkmark--width: var(--checkbox--lg--checkmark--width);
    --checkbox--checkmark--height: var(--checkbox--lg--checkmark--height);
}

.checkbox.-light {
    --checkbox--border-top-color: var(--checkbox--light--border-top-color);
    --checkbox--border-right-color: var(--checkbox--light--border-right-color);
    --checkbox--border-bottom-color: var(--checkbox--light--border-bottom-color);
    --checkbox--border-left-color: var(--checkbox--light--border-left-color);
    --checkbox--background: var(--checkbox--light--background);
    --checkbox--color: var(--checkbox--light--color);
    --checkbox--disabled--background: var(--checkbox--light--disabled--background);
    --checkbox--disabled--border-top-color: var(--checkbox--light--disabled--border-top-color);
    --checkbox--disabled--border-right-color: var(--checkbox--light--disabled--border-right-color);
    --checkbox--disabled--border-bottom-color: var(--checkbox--light--disabled--border-bottom-color);
    --checkbox--disabled--border-left-color: var(--checkbox--light--disabled--border-left-color);
    --checkbox--readonly--background: var(--checkbox--light--readonly--background);
    --checkbox--readonly--border-top-color: var(--checkbox--light--readonly--border-top-color);
    --checkbox--readonly--border-right-color: var(--checkbox--light--readonly--border-right-color);
    --checkbox--readonly--border-bottom-color: var(--checkbox--light--readonly--border-bottom-color);
    --checkbox--readonly--border-left-color: var(--checkbox--light--readonly--border-left-color);
    --checkbox--checked--disabled--background: var(--checkbox--light--checked--disabled--background);
    --checkbox--checked--disabled--border-top-color: var(--checkbox--light--checked--disabled--border-top-color);
    --checkbox--checked--disabled--border-right-color: var(--checkbox--light--checked--disabled--border-right-color);
    --checkbox--checked--disabled--border-bottom-color: var(--checkbox--light--checked--disabled--border-bottom-color);
    --checkbox--checked--disabled--border-left-color: var(--checkbox--light--checked--disabled--border-left-color);
    --checkbox--checked--readonly--background: var(--checkbox--light--checked--readonly--background);
    --checkbox--checked--readonly--border-top-color: var(--checkbox--light--checked--readonly--border-top-color);
    --checkbox--checked--readonly--border-right-color: var(--checkbox--light--checked--readonly--border-right-color);
    --checkbox--checked--readonly--border-bottom-color: var(--checkbox--light--checked--readonly--border-bottom-color);
    --checkbox--checked--readonly--border-left-color: var(--checkbox--light--checked--readonly--border-left-color);
}

.checkbox.-dark {
    --checkbox--border-top-color: var(--checkbox--dark--border-top-color);
    --checkbox--border-right-color: var(--checkbox--dark--border-right-color);
    --checkbox--border-bottom-color: var(--checkbox--dark--border-bottom-color);
    --checkbox--border-left-color: var(--checkbox--dark--border-left-color);
    --checkbox--background: var(--checkbox--dark--background);
    --checkbox--color: var(--checkbox--dark--color);
    --checkbox--disabled--background: var(--checkbox--dark--disabled--background);
    --checkbox--disabled--border-top-color: var(--checkbox--dark--disabled--border-top-color);
    --checkbox--disabled--border-right-color: var(--checkbox--dark--disabled--border-right-color);
    --checkbox--disabled--border-bottom-color: var(--checkbox--dark--disabled--border-bottom-color);
    --checkbox--disabled--border-left-color: var(--checkbox--dark--disabled--border-left-color);
    --checkbox--readonly--background: var(--checkbox--dark--readonly--background);
    --checkbox--readonly--border-top-color: var(--checkbox--dark--readonly--border-top-color);
    --checkbox--readonly--border-right-color: var(--checkbox--dark--readonly--border-right-color);
    --checkbox--readonly--border-bottom-color: var(--checkbox--dark--readonly--border-bottom-color);
    --checkbox--readonly--border-left-color: var(--checkbox--dark--readonly--border-left-color);
    --checkbox--checked--disabled--background: var(--checkbox--dark--checked--disabled--background);
    --checkbox--checked--disabled--border-top-color: var(--checkbox--dark--checked--disabled--border-top-color);
    --checkbox--checked--disabled--border-right-color: var(--checkbox--dark--checked--disabled--border-right-color);
    --checkbox--checked--disabled--border-bottom-color: var(--checkbox--dark--checked--disabled--border-bottom-color);
    --checkbox--checked--disabled--border-left-color: var(--checkbox--dark--checked--disabled--border-left-color);
    --checkbox--checked--readonly--background: var(--checkbox--dark--checked--readonly--background);
    --checkbox--checked--readonly--border-top-color: var(--checkbox--dark--checked--readonly--border-top-color);
    --checkbox--checked--readonly--border-right-color: var(--checkbox--dark--checked--readonly--border-right-color);
    --checkbox--checked--readonly--border-bottom-color: var(--checkbox--dark--checked--readonly--border-bottom-color);
    --checkbox--checked--readonly--border-left-color: var(--checkbox--dark--checked--readonly--border-left-color);
}

.checkbox.-native input {
    top: auto;
    left: auto;
    position: relative;
    opacity: 1;
    height: auto;
    width: auto;
}

.checkbox.-native .checkbox-label {
    padding-left: var(--checkbox--margin-right);
}

.checkbox.-native .checkbox-label::before, .checkbox.-native .checkbox-label::after {
    display: none;
}

.checkbox-group {
    display: flex;
    flex-direction: column;
}

.checkbox-group.-inline {
    flex-direction: row;
}

.drawer-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--drawer--z-index);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.drawer-wrapper.-alert > .drawer > .drawer-footer, .drawer-wrapper.-confirm > .drawer > .drawer-footer, .drawer-wrapper.-prompt > .drawer > .drawer-footer {
    display: flex;
    justify-content: flex-end;
}

.drawer {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    text-align: left;
}

.drawer > .drawer-header {
    display: flex;
    justify-content: space-between;
}

.drawer > .drawer-body {
    display: flex;
    flex-direction: row;
}

.drawer > .drawer-footer {
    display: flex;
    justify-content: flex-end;
}

.drawer .drawer-content {
    width: 100%;
    display: block;
}

.drawer .drawer-close {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 1.5rem;
    width: 1.5rem;
    line-height: 1.5rem;
    font-size: 0.5rem;
    cursor: pointer;
    padding: 0;
    border: 0;
    transition: background-color 0.3s ease;
    background-color: transparent;
}

.drawer-wrapper {
    background: var(--drawer--wrapper--background);
}

.drawer {
    max-width: var(--drawer--max-width);
    width: var(--drawer--width);
    box-shadow: var(--drawer--box-shadow, var(--drawer--box-shadow-offset-x) var(--drawer--box-shadow-offset-y) var(--drawer--box-shadow-blur-radius) var(--drawer--box-shadow-spread-radius) var(--drawer--box-shadow-color));
    color: var(--drawer--color);
    font-size: var(--drawer--font-size);
}

.drawer-header {
    background: var(--drawer--header--background);
    border-radius: var(--drawer--border-radius, var(--drawer--border-top-left-radius) var(--drawer--border-top-right-radius) var(--drawer--border-bottom-right-radius) var(--drawer--border-bottom-left-radius));
    color: var(--drawer--color);
    border-style: var(--drawer--border-style, var(--drawer--border-top-style) var(--drawer--border-right-style) var(--drawer--border-bottom-style) var(--drawer--border-left-style));
    border-top-color: var(--drawer--border-top-color);
    border-right-color: var(--drawer--border-right-color);
    border-bottom-color: var(--drawer--border-bottom-color);
    border-left-color: var(--drawer--border-left-color);
    border-width: var(--drawer--border-width, var(--drawer--border-top-width) var(--drawer--border-right-width) var(--drawer--border-bottom-width) var(--drawer--border-left-width));
    padding: var(--drawer--padding, var(--drawer--padding-top) var(--drawer--padding-right) var(--drawer--padding-bottom) var(--drawer--padding-left));
    transition-property: var(--drawer--transition-property);
    transition-duration: var(--drawer--transition-duration);
    transition-timing-function: var(--drawer--transition-timing-function);
}

.drawer-body {
    background: var(--drawer--background);
    border-radius: var(--drawer--border-radius, var(--drawer--border-top-left-radius) var(--drawer--border-top-right-radius) var(--drawer--border-bottom-right-radius) var(--drawer--border-bottom-left-radius));
    border-style: var(--drawer--border-style, var(--drawer--border-top-style) var(--drawer--border-right-style) var(--drawer--border-bottom-style) var(--drawer--border-left-style));
    border-top-color: var(--drawer--border-top-color);
    border-right-color: var(--drawer--border-right-color);
    border-bottom-color: var(--drawer--border-bottom-color);
    border-left-color: var(--drawer--border-left-color);
    border-width: var(--drawer--border-width, var(--drawer--border-top-width) var(--drawer--border-right-width) var(--drawer--border-bottom-width) var(--drawer--border-left-width));
    color: var(--drawer--color);
    padding: var(--drawer--padding, var(--drawer--padding-top) var(--drawer--padding-right) var(--drawer--padding-bottom) var(--drawer--padding-left));
    transition-property: var(--drawer--transition-property);
    transition-duration: var(--drawer--transition-duration);
    transition-timing-function: var(--drawer--transition-timing-function);
}

.drawer-footer {
    background: var(--drawer--footer--background);
    border-radius: var(--drawer--border-radius, var(--drawer--border-top-left-radius) var(--drawer--border-top-right-radius) var(--drawer--border-bottom-right-radius) var(--drawer--border-bottom-left-radius));
    color: var(--drawer--color);
    border-style: var(--drawer--border-style, var(--drawer--border-top-style) var(--drawer--border-right-style) var(--drawer--border-bottom-style) var(--drawer--border-left-style));
    border-top-color: var(--drawer--border-top-color);
    border-right-color: var(--drawer--border-right-color);
    border-bottom-color: var(--drawer--border-bottom-color);
    border-left-color: var(--drawer--border-left-color);
    border-width: var(--drawer--border-width, var(--drawer--border-top-width) var(--drawer--border-right-width) var(--drawer--border-bottom-width) var(--drawer--border-left-width));
    padding: var(--drawer--padding, var(--drawer--padding-top) var(--drawer--padding-right) var(--drawer--padding-bottom) var(--drawer--padding-left));
    transition-property: var(--drawer--transition-property);
    transition-duration: var(--drawer--transition-duration);
    transition-timing-function: var(--drawer--transition-timing-function);
}

.drawer-header + .drawer-body {
    border-top: 0;
}

.drawer-body:has(+ .drawer-footer) {
    border-bottom: 0;
}

.drawer > *:not(:first-child) {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.drawer > *:not(:last-child) {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.drawer .drawer-close {
    color: var(--drawer--color);
}

.drawer .drawer-icon {
    margin: var(--drawer--icon--margin, var(--drawer--icon--margin-top) var(--drawer--icon--margin-right) var(--drawer--icon--margin-bottom) var(--drawer--icon--margin-left));
    align-items: center;
    display: flex;
}

.drawer-wrapper .drawer-footer .button + .button {
    margin: var(--drawer--footer--button--margin, var(--drawer--footer--button--margin-top) var(--drawer--footer--button--margin-right) var(--drawer--footer--button--margin-bottom) var(--drawer--footer--button--margin-left));
}

.drawer.-light {
    --drawer--border-top-color: var(--drawer--light--border-top-color);
    --drawer--border-right-color: var(--drawer--light--border-right-color);
    --drawer--border-bottom-color: var(--drawer--light--border-bottom-color);
    --drawer--border-left-color: var(--drawer--light--border-left-color);
    --drawer--background: var(--drawer--light--background);
    --drawer--color: var(--drawer--light--color);
    --drawer--header--background: var(--drawer--light--header--background);
    --drawer--footer--background: var(--drawer--light--footer--background);
}

.drawer.-dark {
    --drawer--border-top-color: var(--drawer--dark--border-top-color);
    --drawer--border-right-color: var(--drawer--dark--border-right-color);
    --drawer--border-bottom-color: var(--drawer--dark--border-bottom-color);
    --drawer--border-left-color: var(--drawer--dark--border-left-color);
    --drawer--background: var(--drawer--dark--background);
    --drawer--color: var(--drawer--dark--color);
    --drawer--header--background: var(--drawer--dark--header--background);
    --drawer--footer--background: var(--drawer--dark--footer--background);
}

.drawer.-primary {
    --drawer--border-top-color: var(--drawer--primary--border-top-color);
    --drawer--border-right-color: var(--drawer--primary--border-right-color);
    --drawer--border-bottom-color: var(--drawer--primary--border-bottom-color);
    --drawer--border-left-color: var(--drawer--primary--border-left-color);
    --drawer--background: var(--drawer--primary--background);
    --drawer--color: var(--drawer--primary--color);
    --drawer--header--background: var(--drawer--primary--header--background);
    --drawer--footer--background: var(--drawer--primary--footer--background);
}

.drawer.-secondary {
    --drawer--border-top-color: var(--drawer--secondary--border-top-color);
    --drawer--border-right-color: var(--drawer--secondary--border-right-color);
    --drawer--border-bottom-color: var(--drawer--secondary--border-bottom-color);
    --drawer--border-left-color: var(--drawer--secondary--border-left-color);
    --drawer--background: var(--drawer--secondary--background);
    --drawer--color: var(--drawer--secondary--color);
    --drawer--header--background: var(--drawer--secondary--header--background);
    --drawer--footer--background: var(--drawer--secondary--footer--background);
}

.drawer.-success {
    --drawer--border-top-color: var(--drawer--success--border-top-color);
    --drawer--border-right-color: var(--drawer--success--border-right-color);
    --drawer--border-bottom-color: var(--drawer--success--border-bottom-color);
    --drawer--border-left-color: var(--drawer--success--border-left-color);
    --drawer--background: var(--drawer--success--background);
    --drawer--color: var(--drawer--success--color);
    --drawer--header--background: var(--drawer--success--header--background);
    --drawer--footer--background: var(--drawer--success--footer--background);
}

.drawer.-danger {
    --drawer--border-top-color: var(--drawer--danger--border-top-color);
    --drawer--border-right-color: var(--drawer--danger--border-right-color);
    --drawer--border-bottom-color: var(--drawer--danger--border-bottom-color);
    --drawer--border-left-color: var(--drawer--danger--border-left-color);
    --drawer--background: var(--drawer--danger--background);
    --drawer--color: var(--drawer--danger--color);
    --drawer--header--background: var(--drawer--danger--header--background);
    --drawer--footer--background: var(--drawer--danger--footer--background);
}

.drawer.-warning {
    --drawer--border-top-color: var(--drawer--warning--border-top-color);
    --drawer--border-right-color: var(--drawer--warning--border-right-color);
    --drawer--border-bottom-color: var(--drawer--warning--border-bottom-color);
    --drawer--border-left-color: var(--drawer--warning--border-left-color);
    --drawer--background: var(--drawer--warning--background);
    --drawer--color: var(--drawer--warning--color);
    --drawer--header--background: var(--drawer--warning--header--background);
    --drawer--footer--background: var(--drawer--warning--footer--background);
}

.drawer.-info {
    --drawer--border-top-color: var(--drawer--info--border-top-color);
    --drawer--border-right-color: var(--drawer--info--border-right-color);
    --drawer--border-bottom-color: var(--drawer--info--border-bottom-color);
    --drawer--border-left-color: var(--drawer--info--border-left-color);
    --drawer--background: var(--drawer--info--background);
    --drawer--color: var(--drawer--info--color);
    --drawer--header--background: var(--drawer--info--header--background);
    --drawer--footer--background: var(--drawer--info--footer--background);
}

.drawer.-sm {
    --drawer--border-top-left-radius: var(--drawer--sm--border-top-left-radius);
    --drawer--border-top-right-radius: var(--drawer--sm--border-top-right-radius);
    --drawer--border-bottom-right-radius: var(--drawer--sm--border-bottom-right-radius);
    --drawer--border-bottom-left-radius: var(--drawer--sm--border-bottom-left-radius);
    --drawer--font-size: var(--drawer--sm--font-size);
    --drawer--max-width: var(--drawer--sm--max-width);
    --drawer--padding-top: var(--drawer--sm--padding-top);
    --drawer--padding-right: var(--drawer--sm--padding-right);
    --drawer--padding-bottom: var(--drawer--sm--padding-bottom);
    --drawer--padding-left: var(--drawer--sm--padding-left);
}

.drawer.-md {
    --drawer--border-top-left-radius: var(--drawer--md--border-top-left-radius);
    --drawer--border-top-right-radius: var(--drawer--md--border-top-right-radius);
    --drawer--border-bottom-right-radius: var(--drawer--md--border-bottom-right-radius);
    --drawer--border-bottom-left-radius: var(--drawer--md--border-bottom-left-radius);
    --drawer--font-size: var(--drawer--md--font-size);
    --drawer--max-width: var(--drawer--md--max-width);
    --drawer--padding-top: var(--drawer--md--padding-top);
    --drawer--padding-right: var(--drawer--md--padding-right);
    --drawer--padding-bottom: var(--drawer--md--padding-bottom);
    --drawer--padding-left: var(--drawer--md--padding-left);
}

.drawer.-lg {
    --drawer--border-top-left-radius: var(--drawer--lg--border-top-left-radius);
    --drawer--border-top-right-radius: var(--drawer--lg--border-top-right-radius);
    --drawer--border-bottom-right-radius: var(--drawer--lg--border-bottom-right-radius);
    --drawer--border-bottom-left-radius: var(--drawer--lg--border-bottom-left-radius);
    --drawer--font-size: var(--drawer--lg--font-size);
    --drawer--max-width: var(--drawer--lg--max-width);
    --drawer--padding-top: var(--drawer--lg--padding-top);
    --drawer--padding-right: var(--drawer--lg--padding-right);
    --drawer--padding-bottom: var(--drawer--lg--padding-bottom);
    --drawer--padding-left: var(--drawer--lg--padding-left);
}

.drawer.-fullscreen {
    width: 100%;
    height: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
}

.drawer.-fullscreen > .drawer-header, .drawer.-fullscreen > .drawer-body, .drawer.-fullscreen > .drawer-footer {
    border-radius: 0;
}

.drawer.-fullscreen > .drawer-body {
    flex: 1;
    overflow: auto;
}

.drawer-wrapper.-top, .drawer-wrapper.-bottom, .drawer-wrapper.-left, .drawer-wrapper.-right {
    justify-content: flex-start;
    align-items: flex-start;
}

.drawer.-top {
    width: 100%;
    max-width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    height: auto;
    max-height: 80vh;
    transform-origin: top center;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.drawer.-right {
    height: 100%;
    max-height: 100%;
    margin-right: 0;
    margin-left: auto;
    width: auto;
    max-width: 80vw;
    transform-origin: center right;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.drawer.-bottom {
    width: 100%;
    max-width: 100%;
    margin-top: auto;
    margin-bottom: 0;
    height: auto;
    max-height: 80vh;
    transform-origin: bottom center;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.drawer.-left {
    height: 100%;
    max-height: 100%;
    margin-right: auto;
    margin-left: 0;
    width: auto;
    max-width: 80vw;
    transform-origin: center left;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.expand-x-enter-active, .expand-x-leave-active, .expand-y-enter-active, .expand-y-leave-active {
    transition-duration: var(--expand--transition-duration);
    transition-property: var(--expand--transition-property);
    transition-timing-function: var(--expand--transition-timing-function);
    overflow: hidden;
}

.expand-x-enter, .expand-x-leave-to {
    width: 0;
}

.expand-y-enter, .expand-y-leave-to {
    height: 0;
}

.expand-x-enter-from, .expand-x-enter-active, .expand-x-leave-active, .expand-x-leave-to, .expand-y-enter-from, .expand-y-enter-active, .expand-y-leave-active, .expand-y-leave-to {
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
}

.expand-x-enter-from, .expand-x-enter-active, .expand-x-leave-active, .expand-x-leave-to {
    will-change: width;
}

.expand-y-enter-from, .expand-y-enter-active, .expand-y-leave-active, .expand-y-leave-to {
    will-change: height;
}

.form {
    position: relative;
}

.form-error {
    position: relative;
    padding: 0;
    list-style: none;
}

.form-error li {
    margin: 0;
}

.form-error {
    color: var(--form-error--color);
    font-size: var(--form-error--font-size);
    margin: var(--form-error--margin, var(--form-error--margin-top) var(--form-error--margin-right) var(--form-error--margin-bottom) var(--form-error--margin-left));
}

.form-group {
    display: block;
    vertical-align: middle;
    position: relative;
    padding: 0;
}

.form-group.-inline {
    display: flex;
}

.form-group.-inline > .form-input-group {
    flex-basis: 100%;
}

.form-group.-inline > .form-label {
    display: flex;
    flex: 0 0 auto;
    align-self: center;
    margin-bottom: 0;
}

.form-group.-inline > .form-label.-right {
    margin-right: 0;
}

.form-group {
    margin: var(--form-group--margin, var(--form-group--margin-top) var(--form-group--margin-right) var(--form-group--margin-bottom) var(--form-group--margin-left));
}

.form-group:last-child {
    margin-bottom: 0;
}

.grid {
    box-sizing: border-box;
    display: flex;
    flex-shrink: 0;
    flex-grow: 0;
    flex-basis: auto;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    min-width: 0;
    column-gap: var(--column-gap);
    row-gap: var(--row-gap);
}

.grid.-container {
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    max-width: calc(var(--fluid--max-width) * 1px);
}

.grid.-inline {
    display: inline-flex;
    width: auto;
}

.grid.-no-wrap {
    flex-wrap: nowrap;
}

.grid.-no-gap {
    gap: 0;
}

.grid.-direction-row {
    flex-direction: row;
}

.grid.-direction-row-reverse {
    flex-direction: row-reverse;
}

.grid.-direction-column {
    flex-direction: column;
}

.grid.-direction-column-reverse {
    flex-direction: column-reverse;
}

@media screen and (min-width: 0px) {
    .grid.-xs\:direction-row {
        flex-direction: row;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:direction-row-reverse {
        flex-direction: row-reverse;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:direction-column {
        flex-direction: column;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:direction-column-reverse {
        flex-direction: column-reverse;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:direction-row {
        flex-direction: row;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:direction-row-reverse {
        flex-direction: row-reverse;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:direction-column {
        flex-direction: column;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:direction-column-reverse {
        flex-direction: column-reverse;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:direction-row {
        flex-direction: row;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:direction-row-reverse {
        flex-direction: row-reverse;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:direction-column {
        flex-direction: column;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:direction-column-reverse {
        flex-direction: column-reverse;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:direction-row {
        flex-direction: row;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:direction-row-reverse {
        flex-direction: row-reverse;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:direction-column {
        flex-direction: column;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:direction-column-reverse {
        flex-direction: column-reverse;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:direction-row {
        flex-direction: row;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:direction-row-reverse {
        flex-direction: row-reverse;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:direction-column {
        flex-direction: column;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:direction-column-reverse {
        flex-direction: column-reverse;
    }
}

.grid.-align-items-flex-start {
    align-items: flex-start;
}

.grid.-align-items-flex-end {
    align-items: flex-end;
}

.grid.-align-items-center {
    align-items: center;
}

.grid.-align-items-baseline {
    align-items: baseline;
}

.grid.-align-items-stretch {
    align-items: stretch;
}

@media screen and (min-width: 0px) {
    .grid.-xs\:align-items-flex-start {
        align-items: flex-start;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:align-items-flex-end {
        align-items: flex-end;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:align-items-center {
        align-items: center;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:align-items-baseline {
        align-items: baseline;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:align-items-stretch {
        align-items: stretch;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:align-items-flex-start {
        align-items: flex-start;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:align-items-flex-end {
        align-items: flex-end;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:align-items-center {
        align-items: center;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:align-items-baseline {
        align-items: baseline;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:align-items-stretch {
        align-items: stretch;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:align-items-flex-start {
        align-items: flex-start;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:align-items-flex-end {
        align-items: flex-end;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:align-items-center {
        align-items: center;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:align-items-baseline {
        align-items: baseline;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:align-items-stretch {
        align-items: stretch;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:align-items-flex-start {
        align-items: flex-start;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:align-items-flex-end {
        align-items: flex-end;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:align-items-center {
        align-items: center;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:align-items-baseline {
        align-items: baseline;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:align-items-stretch {
        align-items: stretch;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:align-items-flex-start {
        align-items: flex-start;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:align-items-flex-end {
        align-items: flex-end;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:align-items-center {
        align-items: center;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:align-items-baseline {
        align-items: baseline;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:align-items-stretch {
        align-items: stretch;
    }
}

.grid.-justify-content-flex-start {
    justify-content: flex-start;
}

.grid.-justify-content-flex-end {
    justify-content: flex-end;
}

.grid.-justify-content-center {
    justify-content: center;
}

.grid.-justify-content-space-between {
    justify-content: space-between;
}

.grid.-justify-content-space-around {
    justify-content: space-around;
}

.grid.-justify-content-space-evenly {
    justify-content: space-evenly;
}

@media screen and (min-width: 0px) {
    .grid.-xs\:justify-content-flex-start {
        justify-content: flex-start;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:justify-content-flex-end {
        justify-content: flex-end;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:justify-content-center {
        justify-content: center;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:justify-content-space-between {
        justify-content: space-between;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:justify-content-space-around {
        justify-content: space-around;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:justify-content-space-evenly {
        justify-content: space-evenly;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:justify-content-flex-start {
        justify-content: flex-start;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:justify-content-flex-end {
        justify-content: flex-end;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:justify-content-center {
        justify-content: center;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:justify-content-space-between {
        justify-content: space-between;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:justify-content-space-around {
        justify-content: space-around;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:justify-content-space-evenly {
        justify-content: space-evenly;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:justify-content-flex-start {
        justify-content: flex-start;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:justify-content-flex-end {
        justify-content: flex-end;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:justify-content-center {
        justify-content: center;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:justify-content-space-between {
        justify-content: space-between;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:justify-content-space-around {
        justify-content: space-around;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:justify-content-space-evenly {
        justify-content: space-evenly;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:justify-content-flex-start {
        justify-content: flex-start;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:justify-content-flex-end {
        justify-content: flex-end;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:justify-content-center {
        justify-content: center;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:justify-content-space-between {
        justify-content: space-between;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:justify-content-space-around {
        justify-content: space-around;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:justify-content-space-evenly {
        justify-content: space-evenly;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:justify-content-flex-start {
        justify-content: flex-start;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:justify-content-flex-end {
        justify-content: flex-end;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:justify-content-center {
        justify-content: center;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:justify-content-space-between {
        justify-content: space-between;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:justify-content-space-around {
        justify-content: space-around;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:justify-content-space-evenly {
        justify-content: space-evenly;
    }
}

.grid.-size-1 {
    width: calc((1 * 100% - (var(--columns) - 1) * var(--column-gap)) / var(--columns));
}

.grid.-size-2 {
    width: calc((2 * 100% - (var(--columns) - 2) * var(--column-gap)) / var(--columns));
}

.grid.-size-3 {
    width: calc((3 * 100% - (var(--columns) - 3) * var(--column-gap)) / var(--columns));
}

.grid.-size-4 {
    width: calc((4 * 100% - (var(--columns) - 4) * var(--column-gap)) / var(--columns));
}

.grid.-size-5 {
    width: calc((5 * 100% - (var(--columns) - 5) * var(--column-gap)) / var(--columns));
}

.grid.-size-6 {
    width: calc((6 * 100% - (var(--columns) - 6) * var(--column-gap)) / var(--columns));
}

.grid.-size-7 {
    width: calc((7 * 100% - (var(--columns) - 7) * var(--column-gap)) / var(--columns));
}

.grid.-size-8 {
    width: calc((8 * 100% - (var(--columns) - 8) * var(--column-gap)) / var(--columns));
}

.grid.-size-9 {
    width: calc((9 * 100% - (var(--columns) - 9) * var(--column-gap)) / var(--columns));
}

.grid.-size-10 {
    width: calc((10 * 100% - (var(--columns) - 10) * var(--column-gap)) / var(--columns));
}

.grid.-size-11 {
    width: calc((11 * 100% - (var(--columns) - 11) * var(--column-gap)) / var(--columns));
}

.grid.-size-12 {
    width: calc((12 * 100% - (var(--columns) - 12) * var(--column-gap)) / var(--columns));
}

.grid.-size-auto {
    width: auto;
}

.grid.-size-grow {
    flex-grow: 1;
    max-width: 100%;
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-1 {
        width: calc((1 * 100% - (var(--columns) - 1) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-2 {
        width: calc((2 * 100% - (var(--columns) - 2) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-3 {
        width: calc((3 * 100% - (var(--columns) - 3) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-4 {
        width: calc((4 * 100% - (var(--columns) - 4) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-5 {
        width: calc((5 * 100% - (var(--columns) - 5) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-6 {
        width: calc((6 * 100% - (var(--columns) - 6) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-7 {
        width: calc((7 * 100% - (var(--columns) - 7) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-8 {
        width: calc((8 * 100% - (var(--columns) - 8) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-9 {
        width: calc((9 * 100% - (var(--columns) - 9) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-10 {
        width: calc((10 * 100% - (var(--columns) - 10) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-11 {
        width: calc((11 * 100% - (var(--columns) - 11) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-12 {
        width: calc((12 * 100% - (var(--columns) - 12) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-auto {
        width: auto;
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:size-grow {
        flex-grow: 1;
        max-width: 100%;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-1 {
        width: calc((1 * 100% - (var(--columns) - 1) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-2 {
        width: calc((2 * 100% - (var(--columns) - 2) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-3 {
        width: calc((3 * 100% - (var(--columns) - 3) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-4 {
        width: calc((4 * 100% - (var(--columns) - 4) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-5 {
        width: calc((5 * 100% - (var(--columns) - 5) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-6 {
        width: calc((6 * 100% - (var(--columns) - 6) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-7 {
        width: calc((7 * 100% - (var(--columns) - 7) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-8 {
        width: calc((8 * 100% - (var(--columns) - 8) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-9 {
        width: calc((9 * 100% - (var(--columns) - 9) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-10 {
        width: calc((10 * 100% - (var(--columns) - 10) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-11 {
        width: calc((11 * 100% - (var(--columns) - 11) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-12 {
        width: calc((12 * 100% - (var(--columns) - 12) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-auto {
        width: auto;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:size-grow {
        flex-grow: 1;
        max-width: 100%;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-1 {
        width: calc((1 * 100% - (var(--columns) - 1) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-2 {
        width: calc((2 * 100% - (var(--columns) - 2) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-3 {
        width: calc((3 * 100% - (var(--columns) - 3) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-4 {
        width: calc((4 * 100% - (var(--columns) - 4) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-5 {
        width: calc((5 * 100% - (var(--columns) - 5) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-6 {
        width: calc((6 * 100% - (var(--columns) - 6) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-7 {
        width: calc((7 * 100% - (var(--columns) - 7) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-8 {
        width: calc((8 * 100% - (var(--columns) - 8) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-9 {
        width: calc((9 * 100% - (var(--columns) - 9) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-10 {
        width: calc((10 * 100% - (var(--columns) - 10) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-11 {
        width: calc((11 * 100% - (var(--columns) - 11) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-12 {
        width: calc((12 * 100% - (var(--columns) - 12) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-auto {
        width: auto;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:size-grow {
        flex-grow: 1;
        max-width: 100%;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-1 {
        width: calc((1 * 100% - (var(--columns) - 1) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-2 {
        width: calc((2 * 100% - (var(--columns) - 2) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-3 {
        width: calc((3 * 100% - (var(--columns) - 3) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-4 {
        width: calc((4 * 100% - (var(--columns) - 4) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-5 {
        width: calc((5 * 100% - (var(--columns) - 5) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-6 {
        width: calc((6 * 100% - (var(--columns) - 6) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-7 {
        width: calc((7 * 100% - (var(--columns) - 7) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-8 {
        width: calc((8 * 100% - (var(--columns) - 8) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-9 {
        width: calc((9 * 100% - (var(--columns) - 9) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-10 {
        width: calc((10 * 100% - (var(--columns) - 10) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-11 {
        width: calc((11 * 100% - (var(--columns) - 11) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-12 {
        width: calc((12 * 100% - (var(--columns) - 12) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-auto {
        width: auto;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:size-grow {
        flex-grow: 1;
        max-width: 100%;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-1 {
        width: calc((1 * 100% - (var(--columns) - 1) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-2 {
        width: calc((2 * 100% - (var(--columns) - 2) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-3 {
        width: calc((3 * 100% - (var(--columns) - 3) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-4 {
        width: calc((4 * 100% - (var(--columns) - 4) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-5 {
        width: calc((5 * 100% - (var(--columns) - 5) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-6 {
        width: calc((6 * 100% - (var(--columns) - 6) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-7 {
        width: calc((7 * 100% - (var(--columns) - 7) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-8 {
        width: calc((8 * 100% - (var(--columns) - 8) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-9 {
        width: calc((9 * 100% - (var(--columns) - 9) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-10 {
        width: calc((10 * 100% - (var(--columns) - 10) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-11 {
        width: calc((11 * 100% - (var(--columns) - 11) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-12 {
        width: calc((12 * 100% - (var(--columns) - 12) * var(--column-gap)) / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-auto {
        width: auto;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:size-grow {
        flex-grow: 1;
        max-width: 100%;
    }
}

.grid.-offset-0 {
    margin-left: calc((100% + var(--column-gap)) * 0 / var(--columns));
}

.grid.-offset-1 {
    margin-left: calc((100% + var(--column-gap)) * 1 / var(--columns));
}

.grid.-offset-2 {
    margin-left: calc((100% + var(--column-gap)) * 2 / var(--columns));
}

.grid.-offset-3 {
    margin-left: calc((100% + var(--column-gap)) * 3 / var(--columns));
}

.grid.-offset-4 {
    margin-left: calc((100% + var(--column-gap)) * 4 / var(--columns));
}

.grid.-offset-5 {
    margin-left: calc((100% + var(--column-gap)) * 5 / var(--columns));
}

.grid.-offset-6 {
    margin-left: calc((100% + var(--column-gap)) * 6 / var(--columns));
}

.grid.-offset-7 {
    margin-left: calc((100% + var(--column-gap)) * 7 / var(--columns));
}

.grid.-offset-8 {
    margin-left: calc((100% + var(--column-gap)) * 8 / var(--columns));
}

.grid.-offset-9 {
    margin-left: calc((100% + var(--column-gap)) * 9 / var(--columns));
}

.grid.-offset-10 {
    margin-left: calc((100% + var(--column-gap)) * 10 / var(--columns));
}

.grid.-offset-11 {
    margin-left: calc((100% + var(--column-gap)) * 11 / var(--columns));
}

.grid.-offset-auto {
    margin-left: auto;
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-0 {
        margin-left: calc((100% + var(--column-gap)) * 0 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-1 {
        margin-left: calc((100% + var(--column-gap)) * 1 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-2 {
        margin-left: calc((100% + var(--column-gap)) * 2 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-3 {
        margin-left: calc((100% + var(--column-gap)) * 3 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-4 {
        margin-left: calc((100% + var(--column-gap)) * 4 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-5 {
        margin-left: calc((100% + var(--column-gap)) * 5 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-6 {
        margin-left: calc((100% + var(--column-gap)) * 6 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-7 {
        margin-left: calc((100% + var(--column-gap)) * 7 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-8 {
        margin-left: calc((100% + var(--column-gap)) * 8 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-9 {
        margin-left: calc((100% + var(--column-gap)) * 9 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-10 {
        margin-left: calc((100% + var(--column-gap)) * 10 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-11 {
        margin-left: calc((100% + var(--column-gap)) * 11 / var(--columns));
    }
}

@media screen and (min-width: 0px) {
    .grid.-xs\:offset-auto {
        margin-left: auto;
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-0 {
        margin-left: calc((100% + var(--column-gap)) * 0 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-1 {
        margin-left: calc((100% + var(--column-gap)) * 1 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-2 {
        margin-left: calc((100% + var(--column-gap)) * 2 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-3 {
        margin-left: calc((100% + var(--column-gap)) * 3 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-4 {
        margin-left: calc((100% + var(--column-gap)) * 4 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-5 {
        margin-left: calc((100% + var(--column-gap)) * 5 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-6 {
        margin-left: calc((100% + var(--column-gap)) * 6 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-7 {
        margin-left: calc((100% + var(--column-gap)) * 7 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-8 {
        margin-left: calc((100% + var(--column-gap)) * 8 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-9 {
        margin-left: calc((100% + var(--column-gap)) * 9 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-10 {
        margin-left: calc((100% + var(--column-gap)) * 10 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-11 {
        margin-left: calc((100% + var(--column-gap)) * 11 / var(--columns));
    }
}

@media screen and (min-width: 576px) {
    .grid.-sm\:offset-auto {
        margin-left: auto;
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-0 {
        margin-left: calc((100% + var(--column-gap)) * 0 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-1 {
        margin-left: calc((100% + var(--column-gap)) * 1 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-2 {
        margin-left: calc((100% + var(--column-gap)) * 2 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-3 {
        margin-left: calc((100% + var(--column-gap)) * 3 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-4 {
        margin-left: calc((100% + var(--column-gap)) * 4 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-5 {
        margin-left: calc((100% + var(--column-gap)) * 5 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-6 {
        margin-left: calc((100% + var(--column-gap)) * 6 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-7 {
        margin-left: calc((100% + var(--column-gap)) * 7 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-8 {
        margin-left: calc((100% + var(--column-gap)) * 8 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-9 {
        margin-left: calc((100% + var(--column-gap)) * 9 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-10 {
        margin-left: calc((100% + var(--column-gap)) * 10 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-11 {
        margin-left: calc((100% + var(--column-gap)) * 11 / var(--columns));
    }
}

@media screen and (min-width: 992px) {
    .grid.-md\:offset-auto {
        margin-left: auto;
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-0 {
        margin-left: calc((100% + var(--column-gap)) * 0 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-1 {
        margin-left: calc((100% + var(--column-gap)) * 1 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-2 {
        margin-left: calc((100% + var(--column-gap)) * 2 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-3 {
        margin-left: calc((100% + var(--column-gap)) * 3 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-4 {
        margin-left: calc((100% + var(--column-gap)) * 4 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-5 {
        margin-left: calc((100% + var(--column-gap)) * 5 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-6 {
        margin-left: calc((100% + var(--column-gap)) * 6 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-7 {
        margin-left: calc((100% + var(--column-gap)) * 7 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-8 {
        margin-left: calc((100% + var(--column-gap)) * 8 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-9 {
        margin-left: calc((100% + var(--column-gap)) * 9 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-10 {
        margin-left: calc((100% + var(--column-gap)) * 10 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-11 {
        margin-left: calc((100% + var(--column-gap)) * 11 / var(--columns));
    }
}

@media screen and (min-width: 1200px) {
    .grid.-lg\:offset-auto {
        margin-left: auto;
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-0 {
        margin-left: calc((100% + var(--column-gap)) * 0 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-1 {
        margin-left: calc((100% + var(--column-gap)) * 1 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-2 {
        margin-left: calc((100% + var(--column-gap)) * 2 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-3 {
        margin-left: calc((100% + var(--column-gap)) * 3 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-4 {
        margin-left: calc((100% + var(--column-gap)) * 4 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-5 {
        margin-left: calc((100% + var(--column-gap)) * 5 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-6 {
        margin-left: calc((100% + var(--column-gap)) * 6 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-7 {
        margin-left: calc((100% + var(--column-gap)) * 7 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-8 {
        margin-left: calc((100% + var(--column-gap)) * 8 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-9 {
        margin-left: calc((100% + var(--column-gap)) * 9 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-10 {
        margin-left: calc((100% + var(--column-gap)) * 10 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-11 {
        margin-left: calc((100% + var(--column-gap)) * 11 / var(--columns));
    }
}

@media screen and (min-width: 1440px) {
    .grid.-xl\:offset-auto {
        margin-left: auto;
    }
}

.icon {
    color: var(--icon--color);
    overflow: visible;
    font-size: var(--icon--font-size);
}

.icon.-inherit {
    color: inherit;
}

.icon.-light {
    --icon--color: var(--icon--light--color);
}

.icon.-dark {
    --icon--color: var(--icon--dark--color);
}

.icon.-primary {
    --icon--color: var(--icon--primary--color);
}

.icon.-secondary {
    --icon--color: var(--icon--secondary--color);
}

.icon.-success {
    --icon--color: var(--icon--success--color);
}

.icon.-danger {
    --icon--color: var(--icon--danger--color);
}

.icon.-warning {
    --icon--color: var(--icon--warning--color);
}

.icon.-info {
    --icon--color: var(--icon--info--color);
}

.icon.-sm {
    --icon--font-size: var(--icon--font-size);
}

.icon.-md {
    --icon--font-size: var(--icon--font-size);
}

.icon.-lg {
    --icon--font-size: var(--icon--font-size);
}

.input {
    display: block;
    vertical-align: middle;
    position: relative;
    flex-grow: 1;
    flex-shrink: 1;
}

.input .input-field {
    display: flex;
    flex: 1 0 auto;
    align-items: center;
    flex-direction: row;
    background-clip: padding-box;
}

.input .input-field > input, .input .input-field > select, .input .input-field > textarea {
    position: relative;
    flex: 1 0 auto;
    width: 1%;
    background: transparent;
    border: 0;
    margin: 0;
    outline: 0;
}

.input .input-field > select::-ms-expand {
    background-color: transparent;
    border: 0;
}

.input .input-field > input::placeholder, .input .input-field > select::placeholder, .input .input-field > textarea::placeholder {
    opacity: 1;
}

.input .input-field > input:disabled, .input .input-field > select:disabled, .input .input-field > textarea:disabled, .input .input-field > input[readonly], .input .input-field > select[readonly], .input .input-field > textarea[readonly] {
    opacity: 1;
    cursor: default;
}

.input .input-field > input:disabled, .input .input-field > select:disabled, .input .input-field > textarea:disabled {
    cursor: not-allowed;
}

.input .input-field > input[readonly], .input .input-field > select[readonly], .input .input-field > textarea[readonly] {
    outline: 0;
}

.input .input-field .input-prefix, .input .input-field .input-suffix {
    display: inline-flex;
    align-items: center;
    z-index: 1;
    font-style: normal;
}

.input .input-field .input-prefix > button:not(.button, .select-caret), .input .input-field .input-suffix > button:not(.button, .select-caret) {
    background: transparent;
    border: 0;
    color: inherit;
}

.input .input-field .input-icon {
    width: auto;
    cursor: pointer;
}

.input .input-value-overlay {
    position: absolute;
    cursor: default;
}

.input.-prepended, .input.-appended {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: stretch;
    padding: 0;
}

.input.-prepended, .input.-appended {
    display: flex;
    flex-wrap: nowrap;
}

.input.-prepended .input-field, .input.-appended .input-field {
    flex-shrink: 1;
}

.input .input-field {
    background: var(--input--background);
    border-style: var(--input--border-style, var(--input--border-top-style) var(--input--border-right-style) var(--input--border-bottom-style) var(--input--border-left-style));
    border-color: var(--input--border-color, var(--input--border-top-color) var(--input--border-right-color) var(--input--border-bottom-color) var(--input--border-left-color));
    border-width: var(--input--border-width, var(--input--border-top-width) var(--input--border-right-width) var(--input--border-bottom-width) var(--input--border-left-width));
    border-radius: var(--input--border-radius, var(--input--border-top-left-radius) var(--input--border-top-right-radius) var(--input--border-bottom-right-radius) var(--input--border-bottom-left-radius));
    box-shadow: var(--input--box-shadow, var(--input--box-shadow-offset-x) var(--input--box-shadow-offset-y) var(--input--box-shadow-blur-radius) var(--input--box-shadow-spread-radius) var(--input--box-shadow-color));
    font-size: var(--input--font-size);
    transition-property: var(--input--transition-property);
    transition-duration: var(--input--transition-duration);
    transition-timing-function: var(--input--transition-timing-function);
}

.input .input-field > input, .input .input-field > select, .input .input-field > textarea {
    color: var(--input--color);
    line-height: var(--input--line-height);
    padding: var(--input--padding, var(--input--padding-top) var(--input--padding-right) var(--input--padding-bottom) var(--input--padding-left));
}

.input .input-field > input::placeholder, .input .input-field > select::placeholder, .input .input-field > textarea::placeholder {
    color: var(--input--placeholder--color);
}

.input .input-field .input-prefix, .input .input-field .input-suffix {
    border-color: var(--input--border-color, var(--input--border-top-color) var(--input--border-right-color) var(--input--border-bottom-color) var(--input--border-left-color));
    padding-left: var(--input--padding-left);
    padding-right: var(--input--padding-right);
    transition-property: var(--input--transition-property);
    transition-duration: var(--input--transition-duration);
    transition-timing-function: var(--input--transition-timing-function);
}

.input .input-field .input-prefix {
    border-right-width: var(--input--border-right-width);
    border-right-style: var(--input--border-right-style);
    color: var(--input--prefix--color);
}

.input .input-field .input-suffix {
    border-left-width: var(--input--border-left-width);
    border-left-style: var(--input--border-left-style);
    color: var(--input--suffix--color);
}

.input .input-field .input-icon {
    color: var(--input--icon--color);
    width: var(--input--icon--width);
    height: var(--input--icon--height);
    transition-property: var(--input--transition-property);
    transition-duration: var(--input--transition-duration);
    transition-timing-function: var(--input--transition-timing-function);
}

.input.-hover .input-field, .input:hover .input-field {
    border-top-color: var(--input--hover--border-top-color);
    border-right-color: var(--input--hover--border-right-color);
    border-bottom-color: var(--input--hover--border-bottom-color);
    border-left-color: var(--input--hover--border-left-color);
}

.input.-focus .input-field, .input:focus-within .input-field {
    border-top-color: var(--input--focus--border-top-color);
    border-right-color: var(--input--focus--border-right-color);
    border-bottom-color: var(--input--focus--border-bottom-color);
    border-left-color: var(--input--focus--border-left-color);
    outline: 0;
}

.input.-error .input-field {
    border-top-color: var(--input--error--border-top-color);
    border-right-color: var(--input--error--border-right-color);
    border-bottom-color: var(--input--error--border-bottom-color);
    border-left-color: var(--input--error--border-left-color);
}

.input.-readonly .input-field:focus-within {
    border-top-color: var(--input--focus--border-top-color);
    border-right-color: var(--input--focus--border-right-color);
    border-bottom-color: var(--input--focus--border-bottom-color);
    border-left-color: var(--input--focus--border-left-color);
    outline: 0;
}

.input.-disabled .input-field {
    background: var(--input--disabled--background);
}

.input.-readonly .input-field {
    background: var(--input--readonly--background);
}

.input .input-prepend, .input .input-append {
    background: var(--input--background);
    border-style: var(--input--border-style, var(--input--border-top-style) var(--input--border-right-style) var(--input--border-bottom-style) var(--input--border-left-style));
    border-top-color: var(--input--border-top-color);
    border-right-color: var(--input--border-right-color);
    border-bottom-color: var(--input--border-bottom-color);
    border-left-color: var(--input--border-left-color);
    border-width: var(--input--border-width, var(--input--border-top-width) var(--input--border-right-width) var(--input--border-bottom-width) var(--input--border-left-width));
    font-size: var(--input--font-size);
    line-height: var(--input--line-height);
    transition-property: var(--input--transition-property);
    transition-duration: var(--input--transition-duration);
    transition-timing-function: var(--input--transition-timing-function);
}

.input .input-prepend {
    border-right-width: 0;
    border-top-left-radius: var(--input--border-top-left-radius);
    border-bottom-left-radius: var(--input--border-bottom-left-radius);
}

.input .input-append {
    border-left-width: 0;
    border-top-right-radius: var(--input--border-top-right-radius);
    border-bottom-right-radius: var(--input--border-bottom-right-radius);
}

.input.-sm {
    --input--border-top-left-radius: var(--input--sm--border-top-left-radius);
    --input--border-top-right-radius: var(--input--sm--border-top-right-radius);
    --input--border-bottom-right-radius: var(--input--sm--border-bottom-right-radius);
    --input--border-bottom-left-radius: var(--input--sm--border-bottom-left-radius);
    --input--font-size: var(--input--sm--font-size);
    --input--padding-top: var(--input--sm--padding-top);
    --input--padding-right: var(--input--sm--padding-right);
    --input--padding-bottom: var(--input--sm--padding-bottom);
    --input--padding-left: var(--input--sm--padding-left);
}

.input.-md {
    --input--border-top-left-radius: var(--input--md--border-top-left-radius);
    --input--border-top-right-radius: var(--input--md--border-top-right-radius);
    --input--border-bottom-right-radius: var(--input--md--border-bottom-right-radius);
    --input--border-bottom-left-radius: var(--input--md--border-bottom-left-radius);
    --input--font-size: var(--input--md--font-size);
    --input--padding-top: var(--input--md--padding-top);
    --input--padding-right: var(--input--md--padding-right);
    --input--padding-bottom: var(--input--md--padding-bottom);
    --input--padding-left: var(--input--md--padding-left);
}

.input.-lg {
    --input--border-top-left-radius: var(--input--lg--border-top-left-radius);
    --input--border-top-right-radius: var(--input--lg--border-top-right-radius);
    --input--border-bottom-right-radius: var(--input--lg--border-bottom-right-radius);
    --input--border-bottom-left-radius: var(--input--lg--border-bottom-left-radius);
    --input--font-size: var(--input--lg--font-size);
    --input--padding-top: var(--input--lg--padding-top);
    --input--padding-right: var(--input--lg--padding-right);
    --input--padding-bottom: var(--input--lg--padding-bottom);
    --input--padding-left: var(--input--lg--padding-left);
}

.input.-light {
    --input--background: var(--input--light--background);
    --input--border-top-color: var(--input--light--border-top-color);
    --input--border-right-color: var(--input--light--border-right-color);
    --input--border-bottom-color: var(--input--light--border-bottom-color);
    --input--border-left-color: var(--input--light--border-left-color);
    --input--color: var(--input--light--color);
    --input--hover--border-top-color: var(--input--light--hover--border-top-color);
    --input--hover--border-right-color: var(--input--light--hover--border-right-color);
    --input--hover--border-bottom-color: var(--input--light--hover--border-bottom-color);
    --input--hover--border-left-color: var(--input--light--hover--border-left-color);
    --input--focus--border-top-color: var(--input--light--focus--border-top-color);
    --input--focus--border-right-color: var(--input--light--focus--border-right-color);
    --input--focus--border-bottom-color: var(--input--light--focus--border-bottom-color);
    --input--focus--border-left-color: var(--input--light--focus--border-left-color);
    --input--disabled--background: var(--input--light--disabled--background);
    --input--readonly--background: var(--input--light--readonly--background);
}

.input.-dark {
    --input--background: var(--input--dark--background);
    --input--border-top-color: var(--input--dark--border-top-color);
    --input--border-right-color: var(--input--dark--border-right-color);
    --input--border-bottom-color: var(--input--dark--border-bottom-color);
    --input--border-left-color: var(--input--dark--border-left-color);
    --input--color: var(--input--dark--color);
    --input--hover--border-top-color: var(--input--dark--hover--border-top-color);
    --input--hover--border-right-color: var(--input--dark--hover--border-right-color);
    --input--hover--border-bottom-color: var(--input--dark--hover--border-bottom-color);
    --input--hover--border-left-color: var(--input--dark--hover--border-left-color);
    --input--focus--border-top-color: var(--input--dark--focus--border-top-color);
    --input--focus--border-right-color: var(--input--dark--focus--border-right-color);
    --input--focus--border-bottom-color: var(--input--dark--focus--border-bottom-color);
    --input--focus--border-left-color: var(--input--dark--focus--border-left-color);
    --input--disabled--background: var(--input--dark--disabled--background);
    --input--readonly--background: var(--input--dark--readonly--background);
}

.input.-prepended .input-field {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input.-appended .input-field {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input .input-prepend > *, .input .input-append > * {
    display: flex;
    flex: 1 1 auto ;
    align-self: stretch !important;
    align-items: center !important;
    justify-self: stretch !important;
    border-radius: 0 !important;
    border: 0;
    width: 100%;
    height: 100%;
}

.image.-fluid {
    height: auto;
    width: 100%;
}

.image.-responsive {
    height: auto;
    max-width: 100%;
}

.image.-float-left {
    float: left;
}

.image.-float-right {
    float: right;
}

.image[src$=".svg"] {
    width: 100% \9;
}

.loader {
    display: inline-block;
    position: relative;
    width: var(--loader--width);
    height: var(--loader--height);
}

.loader::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.loader-text, .loader > svg {
    position: absolute;
    height: 100%;
    width: 100%;
    inset: 0;
    margin: auto;
}

.loader-text {
    display: flex;
    justify-content: center;
    align-items: center;
}

.loader.-auto {
    width: 100%;
    height: 100%;
}

.loader > svg {
    animation-name: loader-rotate;
    animation-duration: var(--loader--animation-duration);
    animation-direction: var(--loader--animation-direction);
    animation-iteration-count: var(--loader--animation-iteration-count);
    transform-origin: center center;
}

.loader > svg > circle {
    stroke: var(--loader--color);
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
    animation-name: loader-dash;
    animation-duration: var(--loader--animation-duration);
    animation-direction: var(--loader--animation-direction);
    animation-iteration-count: var(--loader--animation-iteration-count);
    stroke-linecap: round;
}

@keyframes loader-rotate {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes loader-dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    
    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px;
    }
    
    100% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px;
    }
}

.loader.-primary {
    --loader--color: var(--loader--primary--color);
}

.loader.-light {
    --loader--color: var(--loader--light--color);
}

.loader.-dark {
    --loader--color: var(--loader--dark--color);
}

.loader.-sm {
    --loader--width: var(--loader--sm--width);
    --loader--height: var(--loader--sm--height);
}

.loader.-md {
    --loader--width: var(--loader--md--width);
    --loader--height: var(--loader--md--height);
}

.loader.-lg {
    --loader--width: var(--loader--lg--width);
    --loader--height: var(--loader--lg--height);
}

.media {
    position: relative;
    display: flex;
    flex-direction: row;
}

.media > .media-body {
    display: flex;
    flex-direction: column;
    flex: 0 1 auto;
}

.media > img, .media > .img, .media > .image {
    align-self: flex-start;
    height: auto;
    flex: 0 0 auto;
}

.media > img, .media > .img, .media > .image {
    margin-right: var(--media--image--margin-right, var(--spacing));
}

.modal-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--modal--z-index);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-wrapper.-alert > .modal > .modal-footer, .modal-wrapper.-confirm > .modal > .modal-footer, .modal-wrapper.-prompt > .modal > .modal-footer {
    display: flex;
    justify-content: flex-end;
}

.modal {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    text-align: left;
}

.modal > .modal-header {
    display: flex;
    justify-content: space-between;
}

.modal > .modal-body {
    display: flex;
    flex-direction: row;
}

.modal > .modal-footer {
    display: flex;
    justify-content: flex-end;
}

.modal .modal-content {
    width: 100%;
    display: block;
}

.modal .modal-close {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 1.5rem;
    width: 1.5rem;
    line-height: 1.5rem;
    font-size: 0.5rem;
    cursor: pointer;
    padding: 0;
    border: 0;
    transition: background-color 0.3s ease;
    background-color: transparent;
    margin-left: auto;
}

.modal-wrapper {
    background: var(--modal--wrapper--background);
}

.modal {
    max-width: var(--modal--max-width);
    width: var(--modal--width);
    box-shadow: var(--modal--box-shadow, var(--modal--box-shadow-offset-x) var(--modal--box-shadow-offset-y) var(--modal--box-shadow-blur-radius) var(--modal--box-shadow-spread-radius) var(--modal--box-shadow-color));
    color: var(--modal--color);
    font-size: var(--modal--font-size);
    background: var(--modal--background);
    border-radius: var(--modal--border-radius, var(--modal--border-top-left-radius) var(--modal--border-top-right-radius) var(--modal--border-bottom-right-radius) var(--modal--border-bottom-left-radius));
    border-style: var(--modal--border-style, var(--modal--border-top-style) var(--modal--border-right-style) var(--modal--border-bottom-style) var(--modal--border-left-style));
    border-top-color: var(--modal--border-top-color);
    border-right-color: var(--modal--border-right-color);
    border-bottom-color: var(--modal--border-bottom-color);
    border-left-color: var(--modal--border-left-color);
    border-width: var(--modal--border-width, var(--modal--border-top-width) var(--modal--border-right-width) var(--modal--border-bottom-width) var(--modal--border-left-width));
    padding: var(--modal--padding, var(--modal--padding-top) var(--modal--padding-right) var(--modal--padding-bottom) var(--modal--padding-left));
    transition-property: var(--modal--transition-property);
    transition-duration: var(--modal--transition-duration);
    transition-timing-function: var(--modal--transition-timing-function);
}

.modal .modal-close {
    color: var(--modal--color);
}

.modal .modal-icon {
    align-items: center;
    display: flex;
}

.modal.-light {
    --modal--border-top-color: var(--modal--light--border-top-color);
    --modal--border-right-color: var(--modal--light--border-right-color);
    --modal--border-bottom-color: var(--modal--light--border-bottom-color);
    --modal--border-left-color: var(--modal--light--border-left-color);
    --modal--background: var(--modal--light--background);
    --modal--color: var(--modal--light--color);
}

.modal.-dark {
    --modal--border-top-color: var(--modal--dark--border-top-color);
    --modal--border-right-color: var(--modal--dark--border-right-color);
    --modal--border-bottom-color: var(--modal--dark--border-bottom-color);
    --modal--border-left-color: var(--modal--dark--border-left-color);
    --modal--background: var(--modal--dark--background);
    --modal--color: var(--modal--dark--color);
}

.modal.-primary {
    --modal--border-top-color: var(--modal--primary--border-top-color);
    --modal--border-right-color: var(--modal--primary--border-right-color);
    --modal--border-bottom-color: var(--modal--primary--border-bottom-color);
    --modal--border-left-color: var(--modal--primary--border-left-color);
    --modal--background: var(--modal--primary--background);
    --modal--color: var(--modal--primary--color);
}

.modal.-secondary {
    --modal--border-top-color: var(--modal--secondary--border-top-color);
    --modal--border-right-color: var(--modal--secondary--border-right-color);
    --modal--border-bottom-color: var(--modal--secondary--border-bottom-color);
    --modal--border-left-color: var(--modal--secondary--border-left-color);
    --modal--background: var(--modal--secondary--background);
    --modal--color: var(--modal--secondary--color);
}

.modal.-success {
    --modal--border-top-color: var(--modal--success--border-top-color);
    --modal--border-right-color: var(--modal--success--border-right-color);
    --modal--border-bottom-color: var(--modal--success--border-bottom-color);
    --modal--border-left-color: var(--modal--success--border-left-color);
    --modal--background: var(--modal--success--background);
    --modal--color: var(--modal--success--color);
}

.modal.-danger {
    --modal--border-top-color: var(--modal--danger--border-top-color);
    --modal--border-right-color: var(--modal--danger--border-right-color);
    --modal--border-bottom-color: var(--modal--danger--border-bottom-color);
    --modal--border-left-color: var(--modal--danger--border-left-color);
    --modal--background: var(--modal--danger--background);
    --modal--color: var(--modal--danger--color);
}

.modal.-warning {
    --modal--border-top-color: var(--modal--warning--border-top-color);
    --modal--border-right-color: var(--modal--warning--border-right-color);
    --modal--border-bottom-color: var(--modal--warning--border-bottom-color);
    --modal--border-left-color: var(--modal--warning--border-left-color);
    --modal--background: var(--modal--warning--background);
    --modal--color: var(--modal--warning--color);
}

.modal.-info {
    --modal--border-top-color: var(--modal--info--border-top-color);
    --modal--border-right-color: var(--modal--info--border-right-color);
    --modal--border-bottom-color: var(--modal--info--border-bottom-color);
    --modal--border-left-color: var(--modal--info--border-left-color);
    --modal--background: var(--modal--info--background);
    --modal--color: var(--modal--info--color);
}

.modal.-sm {
    --modal--border-top-left-radius: var(--modal--sm--border-top-left-radius);
    --modal--border-top-right-radius: var(--modal--sm--border-top-right-radius);
    --modal--border-bottom-right-radius: var(--modal--sm--border-bottom-right-radius);
    --modal--border-bottom-left-radius: var(--modal--sm--border-bottom-left-radius);
    --modal--font-size: var(--modal--sm--font-size);
    --modal--max-width: var(--modal--sm--max-width);
    --modal--padding-top: var(--modal--sm--padding-top);
    --modal--padding-right: var(--modal--sm--padding-right);
    --modal--padding-bottom: var(--modal--sm--padding-bottom);
    --modal--padding-left: var(--modal--sm--padding-left);
}

.modal.-md {
    --modal--border-top-left-radius: var(--modal--md--border-top-left-radius);
    --modal--border-top-right-radius: var(--modal--md--border-top-right-radius);
    --modal--border-bottom-right-radius: var(--modal--md--border-bottom-right-radius);
    --modal--border-bottom-left-radius: var(--modal--md--border-bottom-left-radius);
    --modal--font-size: var(--modal--md--font-size);
    --modal--max-width: var(--modal--md--max-width);
    --modal--padding-top: var(--modal--md--padding-top);
    --modal--padding-right: var(--modal--md--padding-right);
    --modal--padding-bottom: var(--modal--md--padding-bottom);
    --modal--padding-left: var(--modal--md--padding-left);
}

.modal.-lg {
    --modal--border-top-left-radius: var(--modal--lg--border-top-left-radius);
    --modal--border-top-right-radius: var(--modal--lg--border-top-right-radius);
    --modal--border-bottom-right-radius: var(--modal--lg--border-bottom-right-radius);
    --modal--border-bottom-left-radius: var(--modal--lg--border-bottom-left-radius);
    --modal--font-size: var(--modal--lg--font-size);
    --modal--max-width: var(--modal--lg--max-width);
    --modal--padding-top: var(--modal--lg--padding-top);
    --modal--padding-right: var(--modal--lg--padding-right);
    --modal--padding-bottom: var(--modal--lg--padding-bottom);
    --modal--padding-left: var(--modal--lg--padding-left);
}

.modal.-fullscreen {
    width: 100%;
    height: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 0;
    flex: 1;
    overflow: auto;
}

.nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
    gap: var(--nav--gap);
}

.nav.-direction-row {
    flex-direction: row;
    justify-content: flex-start;
}

.nav.-direction-column {
    flex-direction: column;
    align-items: flex-start;
}

.nav.-no-gap {
    gap: 0;
}

.nav.-sm {
    --nav--font-size: var(--nav--sm--font-size);
    --nav--gap: var(--nav--sm--gap);
}

.nav.-md {
    --nav--font-size: var(--nav--md--font-size);
    --nav--gap: var(--nav--md--gap);
}

.nav.-lg {
    --nav--font-size: var(--nav--lg--font-size);
    --nav--gap: var(--nav--lg--gap);
}

.nav.-light {
    --nav--color: var(--nav--light--color);
    --nav--item--active--color: var(--nav--light--item--active--color);
}

.nav.-dark {
    --nav--color: var(--nav--dark--color);
    --nav--item--active--color: var(--nav--dark--item--active--color);
}

.nav-item {
    color: var(--nav--color);
    font-size: var(--nav--font-size);
    transition-property: var(--nav--transition-property);
    transition-duration: var(--nav--transition-duration);
    transition-timing-function: var(--nav--transition-timing-function);
    display: block;
    margin-bottom: 0;
}

.nav-item.-disabled {
    color: var(--nav--item--disabled--color);
    pointer-events: none;
    cursor: default;
}

.nav-item.-active {
    color: var(--nav--item--active--color);
    font-weight: var(--nav--item--active--font-weight);
}

.nav-item:hover, .nav-item:focus {
    text-decoration: none;
    outline: 0;
}

.nav-item[to], .nav-item[href] {
    cursor: pointer;
}

.popover {
    position: absolute;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    width: var(--popover--width);
    max-width: var(--popover--max-width);
    z-index: var(--popover--z-index);
}

.popover-trigger {
    display: inline-flex;
}

.popover[data-popup-placement^="top"] {
    transform-origin: center bottom;
}

.popover[data-popup-placement^="right"] {
    transform-origin: left center;
}

.popover[data-popup-placement^="bottom"] {
    transform-origin: center top;
}

.popover[data-popup-placement^="left"] {
    transform-origin: right center;
}

.popover-arrow {
    position: absolute;
}

.popover-arrow, .popover-arrow::after {
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    position: absolute;
    box-sizing: border-box;
}

.popover-arrow::after {
    content: "";
}

.popover[data-popup-placement^="top"] .popover-arrow, .popover[data-popup-placement^="top"] .popover-arrow::after {
    border-bottom-width: 0;
}

.popover[data-popup-placement^="bottom"] .popover-arrow, .popover[data-popup-placement^="bottom"] .popover-arrow::after {
    border-top-width: 0;
}

.popover[data-popup-placement^="right"] .popover-arrow, .popover[data-popup-placement^="right"] .popover-arrow::after {
    border-left-width: 0;
}

.popover[data-popup-placement^="left"] .popover-arrow, .popover[data-popup-placement^="left"] .popover-arrow::after {
    border-right-width: 0;
}

.popover {
    box-shadow: var(--popover--box-shadow, var(--popover--box-shadow-offset-x) var(--popover--box-shadow-offset-y) var(--popover--box-shadow-blur-radius) var(--popover--box-shadow-spread-radius) var(--popover--box-shadow-color));
    color: var(--popover--color);
    font-size: var(--popover--font-size);
    background: var(--popover--background);
    border-style: var(--popover--border-style, var(--popover--border-top-style) var(--popover--border-right-style) var(--popover--border-bottom-style) var(--popover--border-left-style));
    border-color: var(--popover--border-color, var(--popover--border-top-color) var(--popover--border-right-color) var(--popover--border-bottom-color) var(--popover--border-left-color));
    border-width: var(--popover--border-width, var(--popover--border-top-width) var(--popover--border-right-width) var(--popover--border-bottom-width) var(--popover--border-left-width));
    border-radius: var(--popover--border-radius, var(--popover--border-top-left-radius) var(--popover--border-top-right-radius) var(--popover--border-bottom-right-radius) var(--popover--border-bottom-left-radius));
    padding: var(--popover--padding, var(--popover--padding-top) var(--popover--padding-right) var(--popover--padding-bottom) var(--popover--padding-left));
    transition-property: var(--popover--transition-property);
    transition-duration: var(--popover--transition-duration);
    transition-timing-function: var(--popover--transition-timing-function);
}

.popover-header, .popover-footer {
    border-style: var(--popover--border-style, var(--popover--border-top-style) var(--popover--border-right-style) var(--popover--border-bottom-style) var(--popover--border-left-style));
    border-color: var(--popover--border-color, var(--popover--border-top-color) var(--popover--border-right-color) var(--popover--border-bottom-color) var(--popover--border-left-color));
    border-width: var(--popover--border-width, var(--popover--border-top-width) var(--popover--border-right-width) var(--popover--border-bottom-width) var(--popover--border-left-width));
    padding: var(--popover--padding, var(--popover--padding-top) var(--popover--padding-right) var(--popover--padding-bottom) var(--popover--padding-left));
}

.popover-header {
    border-right-width: 0;
    border-left-width: 0;
    margin-top: calc(var(--popover--padding-top) * -1);
    margin-right: calc(var(--popover--padding-right) * -1);
    margin-bottom: var(--popover--padding-bottom, calc(var(--spacing) * 0.75));
    margin-left: calc(var(--popover--padding-left) * -1);
}

.popover-footer {
    border-right-width: 0;
    border-left-width: 0;
    margin-top: var(--popover--padding-top, calc(var(--spacing) * 0.75));
    margin-right: calc(var(--popover--padding-right) * -1);
    margin-bottom: calc(var(--popover--padding-bottom) * -1);
    margin-left: calc(var(--popover--padding-left) * -1);
}

.popover .popover-header:first-child, .popover .popover-footer:first-child {
    border-top-width: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: var(--popover--border-top-left-radius, var(--border-top-left-radius));
    border-top-right-radius: var(--popover--border-top-right-radius, var(--border-top-right-radius));
}

.popover .popover-header:last-child, .popover .popover-footer:last-child {
    border-bottom-width: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: var(--popover--border-bottom-right-radius, var(--border-bottom-right-radius));
    border-bottom-left-radius: var(--popover--border-bottom-left-radius, var(--border-bottom-left-radius));
}

.popover-arrow, .popover-arrow::after {
    width: var(--popover--arrow--size);
    height: var(--popover--arrow--size);
}

.popover-arrow, .popover-arrow::after {
    border-width: var(--popover--arrow--size);
}

.popover[data-popup-placement^="top"] .popover-arrow::after, .popover[data-popup-placement^="bottom"] .popover-arrow::after {
    margin-left: calc(var(--popover--arrow--size) * -1);
}

.popover[data-popup-placement^="left"] .popover-arrow::after, .popover[data-popup-placement^="right"] .popover-arrow::after {
    margin-top: calc(var(--popover--arrow--size) * -1);
}

.popover[data-popup-placement^="top"] .popover-arrow::after {
    bottom: 1px;
    border-top-color: var(--popover--background);
}

.popover[data-popup-placement^="top"] .popover-arrow {
    border-top-color: var(--popover--border-top-color);
}

.popover[data-popup-placement^="bottom"] .popover-arrow::after {
    top: 1px;
    border-bottom-color: var(--popover--background);
}

.popover[data-popup-placement^="bottom"] .popover-arrow {
    border-bottom-color: var(--popover--border-bottom-color);
}

.popover[data-popup-placement^="left"] .popover-arrow::after {
    right: 1px;
    border-left-color: var(--popover--background);
}

.popover[data-popup-placement^="left"] .popover-arrow {
    border-left-color: var(--popover--border-left-color);
}

.popover[data-popup-placement^="right"] .popover-arrow::after {
    left: 1px;
    border-right-color: var(--popover--background);
}

.popover[data-popup-placement^="right"] .popover-arrow {
    border-right-color: var(--popover--border-right-color);
}

.popover.-sm {
    --popover--width: var(--popover--sm--width);
}

.popover.-md {
    --popover--width: var(--popover--md--width);
}

.popover.-lg {
    --popover--width: var(--popover--lg--width);
}

.popover.-light {
    --popover--border-top-color: var(--popover--light--border-top-color);
    --popover--border-right-color: var(--popover--light--border-right-color);
    --popover--border-bottom-color: var(--popover--light--border-bottom-color);
    --popover--border-left-color: var(--popover--light--border-left-color);
    --popover--background: var(--popover--light--background);
    --popover--color: var(--popover--light--color);
}

.popover.-dark {
    --popover--border-top-color: var(--popover--dark--border-top-color);
    --popover--border-right-color: var(--popover--dark--border-right-color);
    --popover--border-bottom-color: var(--popover--dark--border-bottom-color);
    --popover--border-left-color: var(--popover--dark--border-left-color);
    --popover--background: var(--popover--dark--background);
    --popover--color: var(--popover--dark--color);
}

.radio {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    outline: 0;
}

.radio:last-of-type {
    margin-right: 0;
}

.radio .radio-label {
    cursor: pointer;
    margin-bottom: 0;
    display: inline-flex;
    align-items: center;
    position: relative;
}

.radio .radio-label::before, .radio .radio-label::after {
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-flex;
    cursor: pointer;
    width: var(--radio--width);
    height: var(--radio--height);
}

.radio .radio-label::before {
    content: "";
    user-select: none;
    transform: translate(0, -50%);
}

.radio .radio-label::after {
    content: "";
    z-index: 1;
    text-align: center;
    transform: scale(0) translate(0, -50%);
    border: 1px solid transparent;
    transform-origin: center top;
    mask-image: url('data:image/svg+xml; utf8, <svg fill="currentColor" version="1.1" xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28"><title>check</title><circle cx="14" cy="14" r="12"></circle></svg>');
    mask-size: var(--radio--circle--width) var(--radio--circle--height);
    mask-position: center center;
    mask-repeat: no-repeat;
}

.radio input {
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
    opacity: 0;
    height: 0;
    width: 0;
}

.radio .radio-label, .radio input, .radio input:focus, .radio input:active {
    outline: 0;
}

.radio input:checked ~ .radio-label::after {
    content: "";
    mask-position: center center;
    mask-repeat: no-repeat;
    transform: scale(1) translate(0, -50%);
}

.radio input:disabled ~ .radio-label, .radio input[readonly] ~ .radio-label {
    cursor: default;
}

.radio input:disabled ~ .radio-label::after, .radio input[readonly] ~ .radio-label::after, .radio input:checked:disabled ~ .radio-label::after, .radio input:checked[readonly] ~ .radio-label::after {
    cursor: not-allowed;
}

.radio {
    margin: var(--radio--margin, var(--radio--margin-top) var(--radio--margin-right) var(--radio--margin-bottom) var(--radio--margin-left));
}

.radio .radio-label {
    color: var(--radio--color);
    font-size: var(--radio--font-size);
    transition-property: var(--radio--transition-property);
    transition-duration: var(--radio--transition-duration);
    transition-timing-function: var(--radio--transition-timing-function);
    padding-left: calc(var(--radio--width) + var(--radio--margin-right));
}

.radio .radio-label::before {
    background: var(--radio--background);
    border-color: var(--radio--border-color, var(--radio--border-top-color) var(--radio--border-right-color) var(--radio--border-bottom-color) var(--radio--border-left-color));
    border-width: var(--radio--border-width, var(--radio--border-top-width) var(--radio--border-right-width) var(--radio--border-bottom-width) var(--radio--border-left-width));
    border-style: var(--radio--border-style, var(--radio--border-top-style) var(--radio--border-right-style) var(--radio--border-bottom-style) var(--radio--border-left-style));
    border-radius: var(--radio--border-radius, var(--radio--border-top-left-radius) var(--radio--border-top-right-radius) var(--radio--border-bottom-right-radius) var(--radio--border-bottom-left-radius));
    box-shadow: var(--radio--box-shadow, var(--radio--box-shadow-offset-x) var(--radio--box-shadow-offset-y) var(--radio--box-shadow-blur-radius) var(--radio--box-shadow-spread-radius) var(--radio--box-shadow-color));
    transition-property: var(--radio--transition-property);
    transition-duration: var(--radio--transition-duration);
    transition-timing-function: var(--radio--transition-timing-function);
}

.radio .radio-label::after {
    background: var(--radio--circle--color);
    transition-property: var(--radio--transition-property);
    transition-duration: var(--radio--transition-duration);
    transition-timing-function: var(--radio--transition-timing-function);
}

.radio:not(.-disabled) .radio-label:focus::before {
    box-shadow: var(--radio--focus--box-shadow, var(--radio--focus--box-shadow-offset-x) var(--radio--focus--box-shadow-offset-y) var(--radio--focus--box-shadow-blur-radius) var(--radio--focus--box-shadow-spread-radius) var(--radio--focus--box-shadow-color));
}

.radio input:checked ~ .radio-label::before {
    background: var(--radio--checked--background);
    border-color: var(--radio--checked--border-color, var(--radio--checked--border-top-color) var(--radio--checked--border-right-color) var(--radio--checked--border-bottom-color) var(--radio--checked--border-left-color));
}

.radio input:disabled ~ .radio-label {
    color: var(--radio--disabled--color);
    cursor: default;
}

.radio input:disabled ~ .radio-label::before {
    background: var(--radio--disabled--background);
    cursor: not-allowed;
}

.radio input[readonly] ~ .radio-label::before {
    background: var(--radio--readonly--background);
    cursor: not-allowed;
}

.radio input:checked:disabled ~ .radio-label::before {
    background: var(--radio--checked--disabled--background);
    border-color: var(--radio--checked--disabled--border-color, var(--radio--checked--disabled--border-top-color) var(--radio--checked--disabled--border-right-color) var(--radio--checked--disabled--border-bottom-color) var(--radio--checked--disabled--border-left-color));
}

.radio input[readonly]:checked ~ .radio-label::before {
    background: var(--radio--checked--readonly--background);
    border-color: var(--radio--checked--readonly--border-color, var(--radio--checked--readonly--border-top-color) var(--radio--checked--readonly--border-right-color) var(--radio--checked--readonly--border-bottom-color) var(--radio--checked--readonly--border-left-color));
}

.radio.-sm {
    --radio--font-size: var(--radio--sm--font-size);
    --radio--width: var(--radio--sm--width);
    --radio--height: var(--radio--sm--height);
    --radio--circle--width: var(--radio--sm--circle--width);
    --radio--circle--height: var(--radio--sm--circle--height);
    --radio--margin-right: var(--radio--sm--margin-right);
    --radio--margin-bottom: var(--radio--sm--margin-bottom);
}

.radio.-md {
    --radio--font-size: var(--radio--md--font-size);
    --radio--width: var(--radio--md--width);
    --radio--height: var(--radio--md--height);
    --radio--circle--width: var(--radio--md--circle--width);
    --radio--circle--height: var(--radio--md--circle--height);
    --radio--margin-right: var(--radio--md--margin-right);
    --radio--margin-bottom: var(--radio--md--margin-bottom);
}

.radio.-lg {
    --radio--font-size: var(--radio--lg--font-size);
    --radio--width: var(--radio--lg--width);
    --radio--height: var(--radio--lg--height);
    --radio--circle--width: var(--radio--lg--circle--width);
    --radio--circle--height: var(--radio--lg--circle--height);
    --radio--margin-right: var(--radio--lg--margin-right);
    --radio--margin-bottom: var(--radio--lg--margin-bottom);
}

.radio.-light {
    --radio--color: var(--radio--light--color);
    --radio--background: var(--radio--light--background);
    --radio--border-top-color: var(--radio--light--border-top-color);
    --radio--border-right-color: var(--radio--light--border-right-color);
    --radio--border-bottom-color: var(--radio--light--border-bottom-color);
    --radio--border-left-color: var(--radio--light--border-left-color);
    --radio--disabled--background: var(--radio--light--disabled--background);
    --radio--disabled--border-top-color: var(--radio--light--disabled--border-top-color);
    --radio--disabled--border-right-color: var(--radio--light--disabled--border-right-color);
    --radio--disabled--border-bottom-color: var(--radio--light--disabled--border-bottom-color);
    --radio--disabled--border-left-color: var(--radio--light--disabled--border-left-color);
    --radio--readonly--background: var(--radio--light--readonly--background);
    --radio--readonly--border-top-color: var(--radio--light--readonly--border-top-color);
    --radio--readonly--border-right-color: var(--radio--light--readonly--border-right-color);
    --radio--readonly--border-bottom-color: var(--radio--light--readonly--border-bottom-color);
    --radio--readonly--border-left-color: var(--radio--light--readonly--border-left-color);
    --radio--checked--disabled--background: var(--radio--light--checked--disabled--background);
    --radio--checked--disabled--border-top-color: var(--radio--light--checked--disabled--border-top-color);
    --radio--checked--disabled--border-right-color: var(--radio--light--checked--disabled--border-right-color);
    --radio--checked--disabled--border-bottom-color: var(--radio--light--checked--disabled--border-bottom-color);
    --radio--checked--disabled--border-left-color: var(--radio--light--checked--disabled--border-left-color);
    --radio--checked--readonly--background: var(--radio--light--checked--readonly--background);
    --radio--checked--readonly--border-top-color: var(--radio--light--checked--readonly--border-top-color);
    --radio--checked--readonly--border-right-color: var(--radio--light--checked--readonly--border-right-color);
    --radio--checked--readonly--border-bottom-color: var(--radio--light--checked--readonly--border-bottom-color);
    --radio--checked--readonly--border-left-color: var(--radio--light--checked--readonly--border-left-color);
}

.radio.-dark {
    --radio--color: var(--radio--dark--color);
    --radio--background: var(--radio--dark--background);
    --radio--border-top-color: var(--radio--dark--border-top-color);
    --radio--border-right-color: var(--radio--dark--border-right-color);
    --radio--border-bottom-color: var(--radio--dark--border-bottom-color);
    --radio--border-left-color: var(--radio--dark--border-left-color);
    --radio--disabled--background: var(--radio--dark--disabled--background);
    --radio--disabled--border-top-color: var(--radio--dark--disabled--border-top-color);
    --radio--disabled--border-right-color: var(--radio--dark--disabled--border-right-color);
    --radio--disabled--border-bottom-color: var(--radio--dark--disabled--border-bottom-color);
    --radio--disabled--border-left-color: var(--radio--dark--disabled--border-left-color);
    --radio--readonly--background: var(--radio--dark--readonly--background);
    --radio--readonly--border-top-color: var(--radio--dark--readonly--border-top-color);
    --radio--readonly--border-right-color: var(--radio--dark--readonly--border-right-color);
    --radio--readonly--border-bottom-color: var(--radio--dark--readonly--border-bottom-color);
    --radio--readonly--border-left-color: var(--radio--dark--readonly--border-left-color);
    --radio--checked--disabled--background: var(--radio--dark--checked--disabled--background);
    --radio--checked--disabled--border-top-color: var(--radio--dark--checked--disabled--border-top-color);
    --radio--checked--disabled--border-right-color: var(--radio--dark--checked--disabled--border-right-color);
    --radio--checked--disabled--border-bottom-color: var(--radio--dark--checked--disabled--border-bottom-color);
    --radio--checked--disabled--border-left-color: var(--radio--dark--checked--disabled--border-left-color);
    --radio--checked--readonly--background: var(--radio--dark--checked--readonly--background);
    --radio--checked--readonly--border-top-color: var(--radio--dark--checked--readonly--border-top-color);
    --radio--checked--readonly--border-right-color: var(--radio--dark--checked--readonly--border-right-color);
    --radio--checked--readonly--border-bottom-color: var(--radio--dark--checked--readonly--border-bottom-color);
    --radio--checked--readonly--border-left-color: var(--radio--dark--checked--readonly--border-left-color);
}

.radio.-native input {
    top: auto;
    left: auto;
    position: relative;
    opacity: 1;
    height: auto;
    width: auto;
}

.radio.-native .radio-label {
    padding-left: var(--radio--margin-right);
}

.radio.-native .radio-label::before, .radio.-native .radio-label::after {
    display: none;
}

.radio-group {
    display: flex;
    flex-direction: column;
}

.radio-group.-inline {
    flex-direction: row;
}

.tabs {
    position: relative;
    display: block;
    width: 100%;
}

.tab-list {
    position: relative;
    display: flex;
    flex-direction: row;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: center;
    overflow: auto;
}

.tab-list.-stretch .tab {
    flex-grow: 1;
}

.tab-list.-stretch .tab:last-child {
    border-right-width: 0;
}

.tab-list {
    box-shadow: var(--tab-list--box-shadow, var(--tab-list--box-shadow-offset-x) var(--tab-list--box-shadow-offset-y) var(--tab-list--box-shadow-blur-radius) var(--tab-list--box-shadow-spread-radius) var(--tab-list--box-shadow-color));
    background: var(--tab-list--background);
    border-style: var(--tab-list--border-style, var(--tab-list--border-top-style) var(--tab-list--border-right-style) var(--tab-list--border-bottom-style) var(--tab-list--border-left-style));
    border-color: var(--tab-list--border-color, var(--tab-list--border-top-color) var(--tab-list--border-right-color) var(--tab-list--border-bottom-color) var(--tab-list--border-left-color));
    border-width: var(--tab-list--border-width, var(--tab-list--border-top-width) var(--tab-list--border-right-width) var(--tab-list--border-bottom-width) var(--tab-list--border-left-width));
    border-radius: var(--tab-list--border-radius, var(--tab-list--border-top-left-radius) var(--tab-list--border-top-right-radius) var(--tab-list--border-bottom-right-radius) var(--tab-list--border-bottom-left-radius));
    color: var(--tab-list--color);
    font-size: var(--tab-list--font-size);
    padding: var(--tab-list--padding, var(--tab-list--padding-top) var(--tab-list--padding-right) var(--tab-list--padding-bottom) var(--tab-list--padding-left));
    margin: var(--tab-list--margin, var(--tab-list--margin-top) var(--tab-list--margin-right) var(--tab-list--margin-bottom) var(--tab-list--margin-left));
    transition-property: var(--tab-list--transition-property);
    transition-duration: var(--tab-list--transition-duration);
    transition-timing-function: var(--tab-list--transition-timing-function);
}

.tab-list.-light {
    --tab-list--border-top-color: var(--tab-list--light--border-top-color);
    --tab-list--border-right-color: var(--tab-list--light--border-right-color);
    --tab-list--border-bottom-color: var(--tab-list--light--border-bottom-color);
    --tab-list--border-left-color: var(--tab-list--light--border-left-color);
    --tab-list--background: var(--tab-list--light--background);
    --tab-list--color: var(--tab-list--light--color);
}

.tab-list.-dark {
    --tab-list--border-top-color: var(--tab-list--dark--border-top-color);
    --tab-list--border-right-color: var(--tab-list--dark--border-right-color);
    --tab-list--border-bottom-color: var(--tab-list--dark--border-bottom-color);
    --tab-list--border-left-color: var(--tab-list--dark--border-left-color);
    --tab-list--background: var(--tab-list--dark--background);
    --tab-list--color: var(--tab-list--dark--color);
}

.tab {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    cursor: pointer;
    justify-content: center;
    align-items: center;
}

.tab {
    box-shadow: var(--tab--box-shadow, var(--tab--box-shadow-offset-x) var(--tab--box-shadow-offset-y) var(--tab--box-shadow-blur-radius) var(--tab--box-shadow-spread-radius) var(--tab--box-shadow-color));
    background: var(--tab--background);
    border-style: var(--tab--border-style, var(--tab--border-top-style) var(--tab--border-right-style) var(--tab--border-bottom-style) var(--tab--border-left-style));
    border-color: var(--tab--border-color, var(--tab--border-top-color) var(--tab--border-right-color) var(--tab--border-bottom-color) var(--tab--border-left-color));
    border-width: var(--tab--border-width, var(--tab--border-top-width) var(--tab--border-right-width) var(--tab--border-bottom-width) var(--tab--border-left-width));
    border-radius: var(--tab--border-radius, var(--tab--border-top-left-radius) var(--tab--border-top-right-radius) var(--tab--border-bottom-right-radius) var(--tab--border-bottom-left-radius));
    color: var(--tab--color);
    font-size: var(--tab--font-size);
    padding: var(--tab--padding, var(--tab--padding-top) var(--tab--padding-right) var(--tab--padding-bottom) var(--tab--padding-left));
    transition-property: var(--tab--transition-property);
    transition-duration: var(--tab--transition-duration);
    transition-timing-function: var(--tab--transition-timing-function);
}

.tab:hover, .tab.-hover {
    background: var(--tab--hover--background);
    border-color: var(--tab--hover--border-color, var(--tab--hover--border-top-color) var(--tab--hover--border-right-color) var(--tab--hover--border-bottom-color) var(--tab--hover--border-left-color));
}

.tab:focus, .tab.-focus {
    background: var(--tab--focus--background);
    border-color: var(--tab--focus--border-color, var(--tab--focus--border-top-color) var(--tab--focus--border-right-color) var(--tab--focus--border-bottom-color) var(--tab--focus--border-left-color));
}

.tab:active, .tab.-active {
    font-weight: var(--tab--active--font-weight);
    background: var(--tab--active--background);
    border-color: var(--tab--active--border-color, var(--tab--active--border-top-color) var(--tab--active--border-right-color) var(--tab--active--border-bottom-color) var(--tab--active--border-left-color));
}

.tab.-light {
    --tab--border-top-color: var(--tab--light--border-top-color);
    --tab--border-right-color: var(--tab--light--border-right-color);
    --tab--border-bottom-color: var(--tab--light--border-bottom-color);
    --tab--border-left-color: var(--tab--light--border-left-color);
    --tab--background: var(--tab--light--background);
    --tab--color: var(--tab--light--color);
    --tab--active--background: var(--tab--light--active--background);
    --tab--active--border-top-color: var(--tab--light--active--border-top-color);
    --tab--active--border-right-color: var(--tab--light--active--border-right-color);
    --tab--active--border-bottom-color: var(--tab--light--active--border-bottom-color);
    --tab--active--border-left-color: var(--tab--light--active--border-left-color);
    --tab--hover--background: var(--tab--light--hover--background);
    --tab--hover--border-top-color: var(--tab--light--hover--border-top-color);
    --tab--hover--border-right-color: var(--tab--light--hover--border-right-color);
    --tab--hover--border-bottom-color: var(--tab--light--hover--border-bottom-color);
    --tab--hover--border-left-color: var(--tab--light--hover--border-left-color);
    --tab--focus--background: var(--tab--light--focus--background);
    --tab--focus--border-top-color: var(--tab--light--focus--border-top-color);
    --tab--focus--border-right-color: var(--tab--light--focus--border-right-color);
    --tab--focus--border-bottom-color: var(--tab--light--focus--border-bottom-color);
    --tab--focus--border-left-color: var(--tab--light--focus--border-left-color);
}

.tab.-dark {
    --tab--border-top-color: var(--tab--dark--border-top-color);
    --tab--border-right-color: var(--tab--dark--border-right-color);
    --tab--border-bottom-color: var(--tab--dark--border-bottom-color);
    --tab--border-left-color: var(--tab--dark--border-left-color);
    --tab--background: var(--tab--dark--background);
    --tab--color: var(--tab--dark--color);
    --tab--active--background: var(--tab--dark--active--background);
    --tab--active--border-top-color: var(--tab--dark--active--border-top-color);
    --tab--active--border-right-color: var(--tab--dark--active--border-right-color);
    --tab--active--border-bottom-color: var(--tab--dark--active--border-bottom-color);
    --tab--active--border-left-color: var(--tab--dark--active--border-left-color);
    --tab--hover--background: var(--tab--dark--hover--background);
    --tab--hover--border-top-color: var(--tab--dark--hover--border-top-color);
    --tab--hover--border-right-color: var(--tab--dark--hover--border-right-color);
    --tab--hover--border-bottom-color: var(--tab--dark--hover--border-bottom-color);
    --tab--hover--border-left-color: var(--tab--dark--hover--border-left-color);
    --tab--focus--background: var(--tab--dark--focus--background);
    --tab--focus--border-top-color: var(--tab--dark--focus--border-top-color);
    --tab--focus--border-right-color: var(--tab--dark--focus--border-right-color);
    --tab--focus--border-bottom-color: var(--tab--dark--focus--border-bottom-color);
    --tab--focus--border-left-color: var(--tab--dark--focus--border-left-color);
}

.tab-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
}

.tab-panel {
    box-shadow: var(--tab-panel--box-shadow, var(--tab-panel--box-shadow-offset-x) var(--tab-panel--box-shadow-offset-y) var(--tab-panel--box-shadow-blur-radius) var(--tab-panel--box-shadow-spread-radius) var(--tab-panel--box-shadow-color));
    background: var(--tab-panel--background);
    border-style: var(--tab-panel--border-style, var(--tab-panel--border-top-style) var(--tab-panel--border-right-style) var(--tab-panel--border-bottom-style) var(--tab-panel--border-left-style));
    border-color: var(--tab-panel--border-color, var(--tab-panel--border-top-color) var(--tab-panel--border-right-color) var(--tab-panel--border-bottom-color) var(--tab-panel--border-left-color));
    border-width: var(--tab-panel--border-width, var(--tab-panel--border-top-width) var(--tab-panel--border-right-width) var(--tab-panel--border-bottom-width) var(--tab-panel--border-left-width));
    border-radius: var(--tab-panel--border-radius, var(--tab-panel--border-top-left-radius) var(--tab-panel--border-top-right-radius) var(--tab-panel--border-bottom-right-radius) var(--tab-panel--border-bottom-left-radius));
    color: var(--tab-panel--color);
    font-size: var(--tab-panel--font-size);
    padding: var(--tab-panel--padding, var(--tab-panel--padding-top) var(--tab-panel--padding-right) var(--tab-panel--padding-bottom) var(--tab-panel--padding-left));
    transition-property: var(--tab-panel--transition-property);
    transition-duration: var(--tab-panel--transition-duration);
    transition-timing-function: var(--tab-panel--transition-timing-function);
}

.tab-panel.-light {
    --tab-panel--border-top-color: var(--tab-panel--light--border-top-color);
    --tab-panel--border-right-color: var(--tab-panel--light--border-right-color);
    --tab-panel--border-bottom-color: var(--tab-panel--light--border-bottom-color);
    --tab-panel--border-left-color: var(--tab-panel--light--border-left-color);
    --tab-panel--background: var(--tab-panel--light--background);
    --tab-panel--color: var(--tab-panel--light--color);
}

.tab-panel.-dark {
    --tab-panel--border-top-color: var(--tab-panel--dark--border-top-color);
    --tab-panel--border-right-color: var(--tab-panel--dark--border-right-color);
    --tab-panel--border-bottom-color: var(--tab-panel--dark--border-bottom-color);
    --tab-panel--border-left-color: var(--tab-panel--dark--border-left-color);
    --tab-panel--background: var(--tab-panel--dark--background);
    --tab-panel--color: var(--tab-panel--dark--color);
}

.toast {
    position: relative;
    display: flex;
    flex-direction: row;
    flex: 1 1 auto;
    align-items: center;
    min-width: 0;
    word-wrap: break-word;
    overflow: hidden;
    background-clip: border-box;
}

.toast-content {
    flex: 0 1 100%;
}

.toast-icon {
    flex: 1;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.toast-dismiss {
    flex: 0 0 auto;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.toast-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    height: var(--toast--progress--height);
}

.toast-progress-bar {
    animation-name: var(--toast--animation-name);
    animation-fill-mode: var(--toast--animation-fill-mode);
    animation-duration: var(--toast--animation-duration);
    transform-origin: left center;
    width: 100%;
    height: 100%;
}

@keyframes toast-duration {
    to {
        transform: scaleX(0);
    }
}

.toast {
    border-style: var(--toast--border-style, var(--toast--border-top-style) var(--toast--border-right-style) var(--toast--border-bottom-style) var(--toast--border-left-style));
    border-color: var(--toast--border-color, var(--toast--border-top-color) var(--toast--border-right-color) var(--toast--border-bottom-color) var(--toast--border-left-color));
    border-width: var(--toast--border-width, var(--toast--border-top-width) var(--toast--border-right-width) var(--toast--border-bottom-width) var(--toast--border-left-width));
    border-radius: var(--toast--border-radius, var(--toast--border-top-left-radius) var(--toast--border-top-right-radius) var(--toast--border-bottom-right-radius) var(--toast--border-bottom-left-radius));
    box-shadow: var(--toast--box-shadow, var(--toast--box-shadow-offset-x) var(--toast--box-shadow-offset-y) var(--toast--box-shadow-blur-radius) var(--toast--box-shadow-spread-radius) var(--toast--box-shadow-color));
    background: var(--toast--background);
    color: var(--toast--color);
    font-size: var(--toast--font-size);
    transition-property: var(--toast--transition-property);
    transition-duration: var(--toast--transition-duration);
    transition-timing-function: var(--toast--transition-timing-function);
}

.toast-content {
    padding: var(--toast--padding, var(--toast--padding-top) var(--toast--padding-right) var(--toast--padding-bottom) var(--toast--padding-left));
}

.toast-content *:first-child {
    margin-top: 0;
}

.toast-content > .toast-title {
    font-weight: var(--toast--title--font-weight);
    font-size: var(--toast--title--font-size);
}

.toast-content *:last-child {
    margin-bottom: 0;
}

.toast-icon {
    margin-left: var(--toast--padding-left);
}

.toast-dismiss {
    margin-right: var(--toast--padding-right);
}

.toast code {
    background: var(--toast--code--background);
}

.toast a {
    font-weight: var(--toast--link--font-weight);
}

.toast-progress {
    background: var(--toast--progress--background);
}

.toast-progress-bar {
    background: var(--toast--progress--bar--background);
}

.toast.-sm {
    --toast--border-top-left-radius: var(--toast--sm--border-top-left-radius);
    --toast--border-top-right-radius: var(--toast--sm--border-top-right-radius);
    --toast--border-bottom-right-radius: var(--toast--sm--border-bottom-right-radius);
    --toast--border-bottom-left-radius: var(--toast--sm--border-bottom-left-radius);
    --toast--font-size: var(--toast--sm--font-size);
    --toast--padding-top: var(--toast--sm--padding-top);
    --toast--padding-right: var(--toast--sm--padding-right);
    --toast--padding-bottom: var(--toast--sm--padding-bottom);
    --toast--padding-left: var(--toast--sm--padding-left);
}

.toast.-md {
    --toast--border-top-left-radius: var(--toast--md--border-top-left-radius);
    --toast--border-top-right-radius: var(--toast--md--border-top-right-radius);
    --toast--border-bottom-right-radius: var(--toast--md--border-bottom-right-radius);
    --toast--border-bottom-left-radius: var(--toast--md--border-bottom-left-radius);
    --toast--font-size: var(--toast--md--font-size);
    --toast--padding-top: var(--toast--md--padding-top);
    --toast--padding-right: var(--toast--md--padding-right);
    --toast--padding-bottom: var(--toast--md--padding-bottom);
    --toast--padding-left: var(--toast--md--padding-left);
}

.toast.-lg {
    --toast--border-top-left-radius: var(--toast--lg--border-top-left-radius);
    --toast--border-top-right-radius: var(--toast--lg--border-top-right-radius);
    --toast--border-bottom-right-radius: var(--toast--lg--border-bottom-right-radius);
    --toast--border-bottom-left-radius: var(--toast--lg--border-bottom-left-radius);
    --toast--font-size: var(--toast--lg--font-size);
    --toast--padding-top: var(--toast--lg--padding-top);
    --toast--padding-right: var(--toast--lg--padding-right);
    --toast--padding-bottom: var(--toast--lg--padding-bottom);
    --toast--padding-left: var(--toast--lg--padding-left);
}

.toast.-light {
    --toast--border-top-color: var(--toast--light--border-top-color);
    --toast--border-right-color: var(--toast--light--border-right-color);
    --toast--border-bottom-color: var(--toast--light--border-bottom-color);
    --toast--border-left-color: var(--toast--light--border-left-color);
    --toast--background: var(--toast--light--background);
    --toast--color: var(--toast--light--color);
    --toast--progress--background: var(--toast--light--progress--background);
    --toast--progress--bar--background: var(--toast--light--progress--bar--background);
    --toast--code--background: var(--toast--light--code--background);
}

.toast.-dark {
    --toast--border-top-color: var(--toast--dark--border-top-color);
    --toast--border-right-color: var(--toast--dark--border-right-color);
    --toast--border-bottom-color: var(--toast--dark--border-bottom-color);
    --toast--border-left-color: var(--toast--dark--border-left-color);
    --toast--background: var(--toast--dark--background);
    --toast--color: var(--toast--dark--color);
    --toast--progress--background: var(--toast--dark--progress--background);
    --toast--progress--bar--background: var(--toast--dark--progress--bar--background);
    --toast--code--background: var(--toast--dark--code--background);
}

.toast.-primary {
    --toast--border-top-color: var(--toast--primary--border-top-color);
    --toast--border-right-color: var(--toast--primary--border-right-color);
    --toast--border-bottom-color: var(--toast--primary--border-bottom-color);
    --toast--border-left-color: var(--toast--primary--border-left-color);
    --toast--background: var(--toast--primary--background);
    --toast--color: var(--toast--primary--color);
    --toast--progress--background: var(--toast--primary--progress--background);
    --toast--progress--bar--background: var(--toast--primary--progress--bar--background);
    --toast--code--background: var(--toast--primary--code--background);
}

.toast.-secondary {
    --toast--border-top-color: var(--toast--secondary--border-top-color);
    --toast--border-right-color: var(--toast--secondary--border-right-color);
    --toast--border-bottom-color: var(--toast--secondary--border-bottom-color);
    --toast--border-left-color: var(--toast--secondary--border-left-color);
    --toast--background: var(--toast--secondary--background);
    --toast--color: var(--toast--secondary--color);
    --toast--progress--background: var(--toast--secondary--progress--background);
    --toast--progress--bar--background: var(--toast--secondary--progress--bar--background);
    --toast--code--background: var(--toast--secondary--code--background);
}

.toast.-success {
    --toast--border-top-color: var(--toast--success--border-top-color);
    --toast--border-right-color: var(--toast--success--border-right-color);
    --toast--border-bottom-color: var(--toast--success--border-bottom-color);
    --toast--border-left-color: var(--toast--success--border-left-color);
    --toast--background: var(--toast--success--background);
    --toast--color: var(--toast--success--color);
    --toast--progress--background: var(--toast--success--progress--background);
    --toast--progress--bar--background: var(--toast--success--progress--bar--background);
    --toast--code--background: var(--toast--success--code--background);
}

.toast.-danger {
    --toast--border-top-color: var(--toast--danger--border-top-color);
    --toast--border-right-color: var(--toast--danger--border-right-color);
    --toast--border-bottom-color: var(--toast--danger--border-bottom-color);
    --toast--border-left-color: var(--toast--danger--border-left-color);
    --toast--background: var(--toast--danger--background);
    --toast--color: var(--toast--danger--color);
    --toast--progress--background: var(--toast--danger--progress--background);
    --toast--progress--bar--background: var(--toast--danger--progress--bar--background);
    --toast--code--background: var(--toast--danger--code--background);
}

.toast.-warning {
    --toast--border-top-color: var(--toast--warning--border-top-color);
    --toast--border-right-color: var(--toast--warning--border-right-color);
    --toast--border-bottom-color: var(--toast--warning--border-bottom-color);
    --toast--border-left-color: var(--toast--warning--border-left-color);
    --toast--background: var(--toast--warning--background);
    --toast--color: var(--toast--warning--color);
    --toast--progress--background: var(--toast--warning--progress--background);
    --toast--progress--bar--background: var(--toast--warning--progress--bar--background);
    --toast--code--background: var(--toast--warning--code--background);
}

.toast.-info {
    --toast--border-top-color: var(--toast--info--border-top-color);
    --toast--border-right-color: var(--toast--info--border-right-color);
    --toast--border-bottom-color: var(--toast--info--border-bottom-color);
    --toast--border-left-color: var(--toast--info--border-left-color);
    --toast--background: var(--toast--info--background);
    --toast--color: var(--toast--info--color);
    --toast--progress--background: var(--toast--info--progress--background);
    --toast--progress--bar--background: var(--toast--info--progress--bar--background);
    --toast--code--background: var(--toast--info--code--background);
}

.toast-container {
    display: flex;
    flex-direction: column;
    gap: var(--toast-container--toast--gap);
    margin: var(--toast-container--margin);
    width: var(--toast-container--width);
    position: fixed;
    max-width: 100%;
    max-height: 100%;
    overflow: visible;
    z-index: var(--toast-container--z-index);
}

.toast-container.-top-left {
    top: 0;
    left: 0;
}

.toast-container.-top {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.toast-container.-top-right {
    top: 0;
    right: 0;
}

.toast-container.-right {
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.toast-container.-bottom-right {
    bottom: 0;
    right: 0;
}

.toast-container.-bottom {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.toast-container.-bottom-left {
    bottom: 0;
    left: 0;
}

.toast-container.-left {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.toast-container > .toast {
    width: var(--toast-container--width);
    max-width: 100%;
    position: relative;
}

.toast-container > .toast:last-of-type {
    margin-bottom: 0;
}

.toast-transition-move, .toast-transition-enter-active, .toast-transition-leave-active {
    transition: var(--toast-container--toast--transition);
}

.toast-transition-enter-from, .toast-transition-leave-to {
    opacity: 0;
}

.toast-transition-leave-active {
    position: absolute;
}

.toggle {
    position: relative;
    margin-bottom: 0;
    display: flex;
}

.toggle .toggle-label {
    display: flex;
    align-items: center;
    position: relative;
    margin: 0;
    cursor: pointer;
}

.toggle .toggle-label::before {
    content: "";
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    flex-grow: 0;
}

.toggle .toggle-label::after {
    content: "";
    position: absolute;
    display: block;
    z-index: 1;
}

.toggle input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
}

.toggle input:disabled ~ .toggle-label::before, .toggle input:disabled ~ .toggle-label::after {
    cursor: not-allowed;
}

.toggle input:disabled ~ .toggle-label, .toggle input[readonly] ~ .toggle-label {
    cursor: not-allowed;
}

.toggle > .input:disabled ~ .toggle-label, .toggle > .input[readonly] ~ .toggle-label {
    cursor: default;
}

.toggle .toggle-label {
    color: var(--toggle--color);
    font-size: var(--toggle--font-size);
}

.toggle .toggle-label::before {
    background: var(--toggle--background);
    box-shadow: var(--toggle--box-shadow, var(--toggle--box-shadow-offset-x) var(--toggle--box-shadow-offset-y) var(--toggle--box-shadow-blur-radius) var(--toggle--box-shadow-spread-radius) var(--toggle--box-shadow-color));
    border-width: var(--toggle--border-width, var(--toggle--border-top-width) var(--toggle--border-right-width) var(--toggle--border-bottom-width) var(--toggle--border-left-width));
    border-style: var(--toggle--border-style, var(--toggle--border-top-style) var(--toggle--border-right-style) var(--toggle--border-bottom-style) var(--toggle--border-left-style));
    border-color: var(--toggle--border-color, var(--toggle--border-top-color) var(--toggle--border-right-color) var(--toggle--border-bottom-color) var(--toggle--border-left-color));
    border-radius: var(--toggle--border-radius, var(--toggle--border-top-left-radius) var(--toggle--border-top-right-radius) var(--toggle--border-bottom-right-radius) var(--toggle--border-bottom-left-radius));
    width: var(--toggle--width);
    height: var(--toggle--height);
    margin: var(--toggle--margin, var(--toggle--margin-top) var(--toggle--margin-right) var(--toggle--margin-bottom) var(--toggle--margin-left));
    transition-property: var(--toggle--transition-property);
    transition-duration: var(--toggle--transition-duration);
    transition-timing-function: var(--toggle--transition-timing-function);
}

.toggle .toggle-label::after {
    background: var(--toggle--indicator--background);
    border-radius: var(--toggle--indicator--border-radius, var(--toggle--indicator--border-top-left-radius) var(--toggle--indicator--border-top-right-radius) var(--toggle--indicator--border-bottom-right-radius) var(--toggle--indicator--border-bottom-left-radius));
    top: 50%;
    left: calc(var(--toggle--height) * calc(1 - var(--toggle--indicator--scale)) * 0.5);
    width: calc(var(--toggle--height) * var(--toggle--indicator--scale));
    height: calc(var(--toggle--height) * var(--toggle--indicator--scale));
    margin: var(--toggle--indicator--margin);
    transition-property: var(--toggle--indicator--transition-property);
    transition-duration: var(--toggle--indicator--transition-duration);
    transition-timing-function: var(--toggle--indicator--transition-timing-function);
    transform: translate(1px, -50%);
}

.toggle input:checked ~ .toggle-label::before {
    background: var(--toggle--checked--background);
    border-color: var(--toggle--checked--border-color, var(--toggle--checked--border-top-color) var(--toggle--checked--border-right-color) var(--toggle--checked--border-bottom-color) var(--toggle--checked--border-left-color));
}

.toggle input:checked ~ .toggle-label::after {
    background: var(--toggle--checked--indicator--background);
    left: calc(var(--toggle--width) - calc(var(--toggle--height) * calc(1 - var(--toggle--indicator--scale)) * 0.5));
    transform: translate(-100%, -50%) translateX(1px);
}

.toggle input:focus ~ .toggle-label::before {
    box-shadow-offset-x: 0;
    box-shadow-offset-y: 0;
    box-shadow-blur-radius: 1px;
    box-shadow-color: var(--toggle--checked--background);
}

.toggle input:disabled ~ .toggle-label {
    color: var(--toggle--disabled--color);
}

.toggle input:disabled ~ .toggle-label::before {
    border-color: var(--toggle--disabled--border-color, var(--toggle--disabled--border-top-color) var(--toggle--disabled--border-right-color) var(--toggle--disabled--border-bottom-color) var(--toggle--disabled--border-left-color));
    background: var(--toggle--disabled--background);
}

.toggle input:disabled ~ .toggle-label::after {
    background: var(--toggle--disabled--indicator--background);
}

.toggle input[readonly] ~ .toggle-label {
    color: var(--toggle--readonly--color);
}

.toggle input[readonly] ~ .toggle-label::before {
    border-color: var(--toggle--readonly--border-color, var(--toggle--readonly--border-top-color) var(--toggle--readonly--border-right-color) var(--toggle--readonly--border-bottom-color) var(--toggle--readonly--border-left-color));
    background: var(--toggle--readonly--background);
}

.toggle input[readonly] ~ .toggle-label::after {
    background: var(--toggle--readonly--indicator--background);
}

.toggle input:checked:disabled ~ .toggle-label::before {
    background: var(--toggle--checked--disabled--background);
    border-color: var(--toggle--checked--disabled--border-color, var(--toggle--checked--disabled--border-top-color) var(--toggle--checked--disabled--border-right-color) var(--toggle--checked--disabled--border-bottom-color) var(--toggle--checked--disabled--border-left-color));
}

.toggle input:checked:disabled ~ .toggle-label::after {
    background: var(--toggle--checked--disabled--indicator--background);
}

.toggle input:checked[readonly] ~ .toggle-label::before {
    background: var(--toggle--checked--readonly--background);
    border-color: var(--toggle--checked--readonly--border-color, var(--toggle--checked--readonly--border-top-color) var(--toggle--checked--readonly--border-right-color) var(--toggle--checked--readonly--border-bottom-color) var(--toggle--checked--readonly--border-left-color));
}

.toggle input:checked[readonly] ~ .toggle-label::after {
    background: var(--toggle--checked--readonly--indicator--background);
}

.toggle.-rounded .toggle-label::before, .toggle.-rounded .toggle-label::after {
    border-radius: var(--toggle--height);
}

.toggle.-sm {
    --toggle--font-size: var(--toggle--sm--font-size);
    --toggle--height: var(--toggle--sm--height);
    --toggle--width: var(--toggle--sm--width);
    --toggle--border-top-left-radius: var(--toggle--sm--border-top-left-radius);
    --toggle--border-top-right-radius: var(--toggle--sm--border-top-right-radius);
    --toggle--border-bottom-right-radius: var(--toggle--sm--border-bottom-right-radius);
    --toggle--border-bottom-left-radius: var(--toggle--sm--border-bottom-left-radius);
    --toggle--indicator--margin-top: var(--toggle--sm--indicator--margin-top);
    --toggle--indicator--margin-right: var(--toggle--sm--indicator--margin-right);
    --toggle--indicator--margin-bottom: var(--toggle--sm--indicator--margin-bottom);
    --toggle--indicator--margin-left: var(--toggle--sm--indicator--margin-left);
}

.toggle.-md {
    --toggle--font-size: var(--toggle--md--font-size);
    --toggle--height: var(--toggle--md--height);
    --toggle--width: var(--toggle--md--width);
    --toggle--border-top-left-radius: var(--toggle--md--border-top-left-radius);
    --toggle--border-top-right-radius: var(--toggle--md--border-top-right-radius);
    --toggle--border-bottom-right-radius: var(--toggle--md--border-bottom-right-radius);
    --toggle--border-bottom-left-radius: var(--toggle--md--border-bottom-left-radius);
    --toggle--indicator--margin-top: var(--toggle--md--indicator--margin-top);
    --toggle--indicator--margin-right: var(--toggle--md--indicator--margin-right);
    --toggle--indicator--margin-bottom: var(--toggle--md--indicator--margin-bottom);
    --toggle--indicator--margin-left: var(--toggle--md--indicator--margin-left);
}

.toggle.-lg {
    --toggle--font-size: var(--toggle--lg--font-size);
    --toggle--height: var(--toggle--lg--height);
    --toggle--width: var(--toggle--lg--width);
    --toggle--border-top-left-radius: var(--toggle--lg--border-top-left-radius);
    --toggle--border-top-right-radius: var(--toggle--lg--border-top-right-radius);
    --toggle--border-bottom-right-radius: var(--toggle--lg--border-bottom-right-radius);
    --toggle--border-bottom-left-radius: var(--toggle--lg--border-bottom-left-radius);
    --toggle--indicator--margin-top: var(--toggle--lg--indicator--margin-top);
    --toggle--indicator--margin-right: var(--toggle--lg--indicator--margin-right);
    --toggle--indicator--margin-bottom: var(--toggle--lg--indicator--margin-bottom);
    --toggle--indicator--margin-left: var(--toggle--lg--indicator--margin-left);
}

.toggle.-light {
    --toggle--color: var(--toggle--light--color);
    --toggle--background: var(--toggle--light--background);
    --toggle--border-top-color: var(--toggle--light--border-top-color);
    --toggle--border-right-color: var(--toggle--light--border-right-color);
    --toggle--border-bottom-color: var(--toggle--light--border-bottom-color);
    --toggle--border-left-color: var(--toggle--light--border-left-color);
    --toggle--indicator--background: var(--toggle--light--indicator--background);
    --toggle--disabled--background: var(--toggle--light--disabled--background);
    --toggle--disabled--border-top-color: var(--toggle--light--disabled--border-top-color);
    --toggle--disabled--border-right-color: var(--toggle--light--disabled--border-right-color);
    --toggle--disabled--border-bottom-color: var(--toggle--light--disabled--border-bottom-color);
    --toggle--disabled--border-left-color: var(--toggle--light--disabled--border-left-color);
    --toggle--disabled--indicator--background: var(--toggle--light--disabled--indicator--background);
    --toggle--readonly--background: var(--toggle--light--readonly--background);
    --toggle--readonly--border-top-color: var(--toggle--light--readonly--border-top-color);
    --toggle--readonly--border-right-color: var(--toggle--light--readonly--border-right-color);
    --toggle--readonly--border-bottom-color: var(--toggle--light--readonly--border-bottom-color);
    --toggle--readonly--border-left-color: var(--toggle--light--readonly--border-left-color);
    --toggle--readonly--indicator--background: var(--toggle--light--readonly--indicator--background);
    --toggle--checked--background: var(--toggle--light--checked--background);
    --toggle--checked--border-top-color: var(--toggle--light--checked--border-top-color);
    --toggle--checked--border-right-color: var(--toggle--light--checked--border-right-color);
    --toggle--checked--border-bottom-color: var(--toggle--light--checked--border-bottom-color);
    --toggle--checked--border-left-color: var(--toggle--light--checked--border-left-color);
    --toggle--checked--disabled--background: var(--toggle--light--checked--disabled--background);
    --toggle--checked--disabled--border-top-color: var(--toggle--light--checked--disabled--border-top-color);
    --toggle--checked--disabled--border-right-color: var(--toggle--light--checked--disabled--border-right-color);
    --toggle--checked--disabled--border-bottom-color: var(--toggle--light--checked--disabled--border-bottom-color);
    --toggle--checked--disabled--border-left-color: var(--toggle--light--checked--disabled--border-left-color);
    --toggle--checked--disabled--indicator--background: var(--toggle--light--checked--disabled--indicator--background);
    --toggle--checked--readonly--background: var(--toggle--light--checked--readonly--background);
    --toggle--checked--readonly--border-top-color: var(--toggle--light--checked--readonly--border-top-color);
    --toggle--checked--readonly--border-right-color: var(--toggle--light--checked--readonly--border-right-color);
    --toggle--checked--readonly--border-bottom-color: var(--toggle--light--checked--readonly--border-bottom-color);
    --toggle--checked--readonly--border-left-color: var(--toggle--light--checked--readonly--border-left-color);
    --toggle--checked--readonly--indicator--background: var(--toggle--light--checked--readonly--indicator--background);
}

.toggle.-dark {
    --toggle--color: var(--toggle--dark--color);
    --toggle--background: var(--toggle--dark--background);
    --toggle--border-top-color: var(--toggle--dark--border-top-color);
    --toggle--border-right-color: var(--toggle--dark--border-right-color);
    --toggle--border-bottom-color: var(--toggle--dark--border-bottom-color);
    --toggle--border-left-color: var(--toggle--dark--border-left-color);
    --toggle--indicator--background: var(--toggle--dark--indicator--background);
    --toggle--disabled--background: var(--toggle--dark--disabled--background);
    --toggle--disabled--border-top-color: var(--toggle--dark--disabled--border-top-color);
    --toggle--disabled--border-right-color: var(--toggle--dark--disabled--border-right-color);
    --toggle--disabled--border-bottom-color: var(--toggle--dark--disabled--border-bottom-color);
    --toggle--disabled--border-left-color: var(--toggle--dark--disabled--border-left-color);
    --toggle--disabled--indicator--background: var(--toggle--dark--disabled--indicator--background);
    --toggle--readonly--background: var(--toggle--dark--readonly--background);
    --toggle--readonly--border-top-color: var(--toggle--dark--readonly--border-top-color);
    --toggle--readonly--border-right-color: var(--toggle--dark--readonly--border-right-color);
    --toggle--readonly--border-bottom-color: var(--toggle--dark--readonly--border-bottom-color);
    --toggle--readonly--border-left-color: var(--toggle--dark--readonly--border-left-color);
    --toggle--readonly--indicator--background: var(--toggle--dark--readonly--indicator--background);
    --toggle--checked--background: var(--toggle--dark--checked--background);
    --toggle--checked--border-top-color: var(--toggle--dark--checked--border-top-color);
    --toggle--checked--border-right-color: var(--toggle--dark--checked--border-right-color);
    --toggle--checked--border-bottom-color: var(--toggle--dark--checked--border-bottom-color);
    --toggle--checked--border-left-color: var(--toggle--dark--checked--border-left-color);
    --toggle--checked--disabled--background: var(--toggle--dark--checked--disabled--background);
    --toggle--checked--disabled--border-top-color: var(--toggle--dark--checked--disabled--border-top-color);
    --toggle--checked--disabled--border-right-color: var(--toggle--dark--checked--disabled--border-right-color);
    --toggle--checked--disabled--border-bottom-color: var(--toggle--dark--checked--disabled--border-bottom-color);
    --toggle--checked--disabled--border-left-color: var(--toggle--dark--checked--disabled--border-left-color);
    --toggle--checked--disabled--indicator--background: var(--toggle--dark--checked--disabled--indicator--background);
    --toggle--checked--readonly--background: var(--toggle--dark--checked--readonly--background);
    --toggle--checked--readonly--border-top-color: var(--toggle--dark--checked--readonly--border-top-color);
    --toggle--checked--readonly--border-right-color: var(--toggle--dark--checked--readonly--border-right-color);
    --toggle--checked--readonly--border-bottom-color: var(--toggle--dark--checked--readonly--border-bottom-color);
    --toggle--checked--readonly--border-left-color: var(--toggle--dark--checked--readonly--border-left-color);
    --toggle--checked--readonly--indicator--background: var(--toggle--dark--checked--readonly--indicator--background);
}

.tooltip {
    position: absolute;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    z-index: var(--tooltip--z-index);
}

.tooltip-trigger {
    display: inline-flex;
}

.tooltip[data-popup-placement^="top"] {
    transform-origin: center bottom;
}

.tooltip[data-popup-placement^="right"] {
    transform-origin: left center;
}

.tooltip[data-popup-placement^="bottom"] {
    transform-origin: center top;
}

.tooltip[data-popup-placement^="left"] {
    transform-origin: right center;
}

.tooltip-arrow {
    position: absolute;
}

.tooltip-arrow, .tooltip-arrow::after {
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    position: absolute;
    box-sizing: border-box;
}

.tooltip-arrow::after {
    content: "";
}

.tooltip[data-popup-placement^="top"] .tooltip-arrow, .tooltip[data-popup-placement^="top"] .tooltip-arrow::after {
    border-bottom-width: 0;
}

.tooltip[data-popup-placement^="bottom"] .tooltip-arrow, .tooltip[data-popup-placement^="bottom"] .tooltip-arrow::after {
    border-top-width: 0;
}

.tooltip[data-popup-placement^="right"] .tooltip-arrow, .tooltip[data-popup-placement^="right"] .tooltip-arrow::after {
    border-left-width: 0;
}

.tooltip[data-popup-placement^="left"] .tooltip-arrow, .tooltip[data-popup-placement^="left"] .tooltip-arrow::after {
    border-right-width: 0;
}

.tooltip {
    box-shadow: var(--tooltip--box-shadow);
    color: var(--tooltip--color);
    font-size: var(--tooltip--font-size);
}

.tooltip-content {
    background: var(--tooltip--background);
    border-style: var(--tooltip--border-style, var(--tooltip--border-top-style) var(--tooltip--border-right-style) var(--tooltip--border-bottom-style) var(--tooltip--border-left-style));
    border-color: var(--tooltip--border-color, var(--tooltip--border-top-color) var(--tooltip--border-right-color) var(--tooltip--border-bottom-color) var(--tooltip--border-left-color));
    border-width: var(--tooltip--border-width, var(--tooltip--border-top-width) var(--tooltip--border-right-width) var(--tooltip--border-bottom-width) var(--tooltip--border-left-width));
    border-radius: var(--tooltip--border-radius, var(--tooltip--border-top-left-radius) var(--tooltip--border-top-right-radius) var(--tooltip--border-bottom-right-radius) var(--tooltip--border-bottom-left-radius));
    padding: var(--tooltip--padding, var(--tooltip--padding-top) var(--tooltip--padding-right) var(--tooltip--padding-bottom) var(--tooltip--padding-left));
    transition-property: var(--tooltip--transition-property);
    transition-duration: var(--tooltip--transition-duration);
    transition-timing-function: var(--tooltip--transition-timing-function);
}

.tooltip-arrow, .tooltip-arrow::after {
    width: var(--tooltip--arrow--size);
    height: var(--tooltip--arrow--size);
}

.tooltip-arrow, .tooltip-arrow::after {
    border-width: var(--tooltip--arrow--size);
}

.tooltip[data-popup-placement^="top"] .tooltip-arrow::after, .tooltip[data-popup-placement^="bottom"] .tooltip-arrow::after {
    margin-left: calc(var(--tooltip--arrow--size) * -1);
}

.tooltip[data-popup-placement^="left"] .tooltip-arrow::after, .tooltip[data-popup-placement^="right"] .tooltip-arrow::after {
    margin-top: calc(var(--tooltip--arrow--size) * -1);
}

.tooltip[data-popup-placement^="top"] .tooltip-arrow::after {
    bottom: 1px;
    border-top-color: var(--tooltip--background);
}

.tooltip[data-popup-placement^="top"] .tooltip-arrow {
    border-top-color: var(--tooltip--border-top-color);
}

.tooltip[data-popup-placement^="bottom"] .tooltip-arrow::after {
    top: 1px;
    border-bottom-color: var(--tooltip--background);
}

.tooltip[data-popup-placement^="bottom"] .tooltip-arrow {
    border-bottom-color: var(--tooltip--border-bottom-color);
}

.tooltip[data-popup-placement^="left"] .tooltip-arrow::after {
    right: 1px;
    border-left-color: var(--tooltip--background);
}

.tooltip[data-popup-placement^="left"] .tooltip-arrow {
    border-left-color: var(--tooltip--border-left-color);
}

.tooltip[data-popup-placement^="right"] .tooltip-arrow::after {
    left: 1px;
    border-right-color: var(--tooltip--background);
}

.tooltip[data-popup-placement^="right"] .tooltip-arrow {
    border-right-color: var(--tooltip--border-right-color);
}

.tooltip.-sm {
    --tooltip--border-top-left-radius: var(--tooltip--sm--border-top-left-radius);
    --tooltip--border-top-right-radius: var(--tooltip--sm--border-top-right-radius);
    --tooltip--border-bottom-right-radius: var(--tooltip--sm--border-bottom-right-radius);
    --tooltip--border-bottom-left-radius: var(--tooltip--sm--border-bottom-left-radius);
    --tooltip--font-size: var(--tooltip--sm--font-size);
    --tooltip--padding-top: var(--tooltip--sm--padding-top);
    --tooltip--padding-right: var(--tooltip--sm--padding-right);
    --tooltip--padding-bottom: var(--tooltip--sm--padding-bottom);
    --tooltip--padding-left: var(--tooltip--sm--padding-left);
}

.tooltip.-md {
    --tooltip--border-top-left-radius: var(--tooltip--md--border-top-left-radius);
    --tooltip--border-top-right-radius: var(--tooltip--md--border-top-right-radius);
    --tooltip--border-bottom-right-radius: var(--tooltip--md--border-bottom-right-radius);
    --tooltip--border-bottom-left-radius: var(--tooltip--md--border-bottom-left-radius);
    --tooltip--font-size: var(--tooltip--md--font-size);
    --tooltip--padding-top: var(--tooltip--md--padding-top);
    --tooltip--padding-right: var(--tooltip--md--padding-right);
    --tooltip--padding-bottom: var(--tooltip--md--padding-bottom);
    --tooltip--padding-left: var(--tooltip--md--padding-left);
}

.tooltip.-lg {
    --tooltip--border-top-left-radius: var(--tooltip--lg--border-top-left-radius);
    --tooltip--border-top-right-radius: var(--tooltip--lg--border-top-right-radius);
    --tooltip--border-bottom-right-radius: var(--tooltip--lg--border-bottom-right-radius);
    --tooltip--border-bottom-left-radius: var(--tooltip--lg--border-bottom-left-radius);
    --tooltip--font-size: var(--tooltip--lg--font-size);
    --tooltip--padding-top: var(--tooltip--lg--padding-top);
    --tooltip--padding-right: var(--tooltip--lg--padding-right);
    --tooltip--padding-bottom: var(--tooltip--lg--padding-bottom);
    --tooltip--padding-left: var(--tooltip--lg--padding-left);
}

.tooltip.-light {
    --tooltip--border-top-color: var(--tooltip--light--border-top-color);
    --tooltip--border-right-color: var(--tooltip--light--border-right-color);
    --tooltip--border-bottom-color: var(--tooltip--light--border-bottom-color);
    --tooltip--border-left-color: var(--tooltip--light--border-left-color);
    --tooltip--background: var(--tooltip--light--background);
    --tooltip--color: var(--tooltip--light--color);
}

.tooltip.-dark {
    --tooltip--border-top-color: var(--tooltip--dark--border-top-color);
    --tooltip--border-right-color: var(--tooltip--dark--border-right-color);
    --tooltip--border-bottom-color: var(--tooltip--dark--border-bottom-color);
    --tooltip--border-left-color: var(--tooltip--dark--border-left-color);
    --tooltip--background: var(--tooltip--dark--background);
    --tooltip--color: var(--tooltip--dark--color);
}

.typography {
    display: block;
    font-weight: var(--font-weight);
    font-family: var(--font-family-base);
    font-size: var(--font-size);
    line-height: var(--line-height);
    letter-spacing: var(--letter-spacing);
}

.typography.-font-size--xs {
    font-size: var(--font-size--xs);
}

.typography.-font-size--sm {
    font-size: var(--font-size--sm);
}

.typography.-font-size--md {
    font-size: var(--font-size--md);
}

.typography.-font-size--lg {
    font-size: var(--font-size--lg);
}

.typography.-font-size--xl {
    font-size: var(--font-size--xl);
}

.typography.-font-size--2xl {
    font-size: var(--font-size--2xl);
}

.typography.-font-size--3xl {
    font-size: var(--font-size--3xl);
}

.typography.-font-size--4xl {
    font-size: var(--font-size--4xl);
}

.typography.-font-size-h1 {
    font-size: var(--h1--font-size);
}

.typography.-font-size-h2 {
    font-size: var(--h2--font-size);
}

.typography.-font-size-h3 {
    font-size: var(--h3--font-size);
}

.typography.-font-size-h4 {
    font-size: var(--h4--font-size);
}

.typography.-font-size-h5 {
    font-size: var(--h5--font-size);
}

.typography.-font-size-h6 {
    font-size: var(--h6--font-size);
}

.typography.-color-primary {
    color: var(--color-primary);
}

.typography.-color-secondary {
    color: var(--color-secondary);
}

.typography.-color-success {
    color: var(--color-success);
}

.typography.-color-danger {
    color: var(--color-danger);
}

.typography.-color-warning {
    color: var(--color-warning);
}

.typography.-color-info {
    color: var(--color-info);
}

.typography.-color-light {
    color: var(--color-light);
}

.typography.-color-dark {
    color: var(--color-dark);
}

.typography.-align-left {
    text-align: left;
}

.typography.-align-center {
    text-align: center;
}

.typography.-align-right {
    text-align: right;
}

.typography.-align-justify {
    text-align: justify;
}

.typography.-text-decoration-underline {
    text-decoration: underline;
}

.typography.-text-decoration-line-through {
    text-decoration: line-through;
}

.typography.-text-decoration-overline {
    text-decoration: overline;
}

.typography.-font-weight--extralight {
    font-weight: var(--font-weight--extralight);
}

.typography.-font-weight--light {
    font-weight: var(--font-weight--light);
}

.typography.-font-weight--normal {
    font-weight: var(--font-weight--normal);
}

.typography.-font-weight--medium {
    font-weight: var(--font-weight--medium);
}

.typography.-font-weight--semibold {
    font-weight: var(--font-weight--semibold);
}

.typography.-font-weight--bold {
    font-weight: var(--font-weight--bold);
}

.typography.-font-weight--black {
    font-weight: var(--font-weight--black);
}

.typography.-font-weight--lighter {
    font-weight: var(--font-weight--lighter);
}

.typography.-font-weight--bolder {
    font-weight: var(--font-weight--bolder);
}

.typography.-line-height--tight {
    line-height: var(--line-height--tight);
}

.typography.-line-height--snug {
    line-height: var(--line-height--snug);
}

.typography.-line-height--normal {
    line-height: var(--line-height--normal);
}

.typography.-line-height--relaxed {
    line-height: var(--line-height--relaxed);
}

.typography.-line-height--loose {
    line-height: var(--line-height--loose);
}

.typography.-letter-spacing--tighter {
    letter-spacing: var(--letter-spacing--tighter);
}

.typography.-letter-spacing--tight {
    letter-spacing: var(--letter-spacing--tight);
}

.typography.-letter-spacing--normal {
    letter-spacing: var(--letter-spacing--normal);
}

.typography.-letter-spacing--wide {
    letter-spacing: var(--letter-spacing--wide);
}

.typography.-letter-spacing--wider {
    letter-spacing: var(--letter-spacing--wider);
}

.typography.-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.typography[class*="-line-clamp"] {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
}

.typography.-line-clamp-1 {
    -webkit-line-clamp: 1;
}

.typography.-line-clamp-2 {
    -webkit-line-clamp: 2;
}

.typography.-line-clamp-3 {
    -webkit-line-clamp: 3;
}

.typography.-line-clamp-4 {
    -webkit-line-clamp: 4;
}

.typography.-text-transform-uppercase {
    text-transform: uppercase;
}

.typography.-text-transform-lowercase {
    text-transform: lowercase;
}

.typography.-text-transform-capitalize {
    text-transform: capitalize;
}

.typography.-text-transform-full-width {
    text-transform: full-width;
}

.typography.-text-transform-full-size-kana {
    text-transform: full-size-kana;
}

.typography.-text-transform-math-auto {
    text-transform: math-auto;
}

.typography.-text-transform-none {
    text-transform: none;
}

.typography.-no-wrap {
    white-space: nowrap;
}

.typography.-gutter-bottom:not(h1, h2, h3, h4, h5, h6, p) {
    margin-bottom: var(--spacing);
}

.lead, .typography.-lead {
    font-size: var(--typography--lead--font-size);
    font-weight: var(--typography--lead--font-weight);
}

.initialism, .typography.-initialism {
    font-size: var(--typography--initialism--font-size);
    text-transform: var(--typography--initialism--text-transform);
}
